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 expanded first-order arithmetic statement
forall p ab ac L bb bc M cb cc J rb rc N. (~((p) = 1) /\ forall pfa_factor_left_cancel_prime pfa_factor_right_cancel_prime. (p) = pfa_factor_left_cancel_prime * pfa_factor_right_cancel_prime -> pfa_factor_left_cancel_prime = 1 \/ pfa_factor_right_cancel_prime = 1) -> (((forall fom_index_pfp_cancel_first_left_bounded. (exists fom_gap_pfp_cancel_first_left_bounded_index_bound. fom_gap_pfp_cancel_first_left_bounded_index_bound + S (fom_index_pfp_cancel_first_left_bounded) = L) -> exists fom_value_pfp_cancel_first_left_bounded. ((((exists fom_beta_height_pfp_cancel_first_left_bounded_entry. fom_beta_height_pfp_cancel_first_left_bounded_entry + S (fom_value_pfp_cancel_first_left_bounded) = S ((S (fom_index_pfp_cancel_first_left_bounded)) * ac)) /\ exists fom_beta_quotient_pfp_cancel_first_left_bounded_entry. ab = fom_beta_quotient_pfp_cancel_first_left_bounded_entry * S ((S (fom_index_pfp_cancel_first_left_bounded)) * ac) + (fom_value_pfp_cancel_first_left_bounded))) /\ (exists fom_gap_pfp_cancel_first_left_bounded_value_bound. fom_gap_pfp_cancel_first_left_bounded_value_bound + S (fom_value_pfp_cancel_first_left_bounded) = p))) /\ (((forall fom_index_pfp_cancel_first_right_bounded. (exists fom_gap_pfp_cancel_first_right_bounded_index_bound. fom_gap_pfp_cancel_first_right_bounded_index_bound + S (fom_index_pfp_cancel_first_right_bounded) = M) -> exists fom_value_pfp_cancel_first_right_bounded. ((((exists fom_beta_height_pfp_cancel_first_right_bounded_entry. fom_beta_height_pfp_cancel_first_right_bounded_entry + S (fom_value_pfp_cancel_first_right_bounded) = S ((S (fom_index_pfp_cancel_first_right_bounded)) * bc)) /\ exists fom_beta_quotient_pfp_cancel_first_right_bounded_entry. bb = fom_beta_quotient_pfp_cancel_first_right_bounded_entry * S ((S (fom_index_pfp_cancel_first_right_bounded)) * bc) + (fom_value_pfp_cancel_first_right_bounded))) /\ (exists fom_gap_pfp_cancel_first_right_bounded_value_bound. fom_gap_pfp_cancel_first_right_bounded_value_bound + S (fom_value_pfp_cancel_first_right_bounded) = p))) /\ (((forall fom_index_pfp_cancel_first_result_bounded. (exists fom_gap_pfp_cancel_first_result_bounded_index_bound. fom_gap_pfp_cancel_first_result_bounded_index_bound + S (fom_index_pfp_cancel_first_result_bounded) = N) -> exists fom_value_pfp_cancel_first_result_bounded. ((((exists fom_beta_height_pfp_cancel_first_result_bounded_entry. fom_beta_height_pfp_cancel_first_result_bounded_entry + S (fom_value_pfp_cancel_first_result_bounded) = S ((S (fom_index_pfp_cancel_first_result_bounded)) * rc)) /\ exists fom_beta_quotient_pfp_cancel_first_result_bounded_entry. rb = fom_beta_quotient_pfp_cancel_first_result_bounded_entry * S ((S (fom_index_pfp_cancel_first_result_bounded)) * rc) + (fom_value_pfp_cancel_first_result_bounded))) /\ (exists fom_gap_pfp_cancel_first_result_bounded_value_bound. fom_gap_pfp_cancel_first_result_bounded_value_bound + S (fom_value_pfp_cancel_first_result_bounded) = p))) /\ ((exists pfaa_left_b_cancel_first pfaa_left_c_cancel_first pfaa_right_b_cancel_first pfaa_right_c_cancel_first pfaa_sum_b_cancel_first pfaa_sum_c_cancel_first pfaa_length_cancel_first. ((((forall pfrep_power_cancel_first_witness_common_left pfrep_left_cancel_first_witness_common_left pfrep_right_cancel_first_witness_common_left. ((exists pfrep_position_cancel_first_witness_common_leftfirst. ((pfrep_position_cancel_first_witness_common_leftfirst+S (pfrep_power_cancel_first_witness_common_left)=(L)) /\ ((((exists ff_h_pfp_cancel_first_witness_common_leftfirstentry. ff_h_pfp_cancel_first_witness_common_leftfirstentry + S (pfrep_left_cancel_first_witness_common_left) = S ((S (pfrep_position_cancel_first_witness_common_leftfirst)) * ac)) /\ exists ff_q_pfp_cancel_first_witness_common_leftfirstentry. ab = ff_q_pfp_cancel_first_witness_common_leftfirstentry * S ((S (pfrep_position_cancel_first_witness_common_leftfirst)) * ac) + (pfrep_left_cancel_first_witness_common_left)))))) \/ (((exists pfrep_gap_cancel_first_witness_common_leftfirstoutside. pfrep_gap_cancel_first_witness_common_leftfirstoutside+(L)=(pfrep_power_cancel_first_witness_common_left)) /\ (((pfrep_left_cancel_first_witness_common_left)=0))))) -> ((exists pfrep_position_cancel_first_witness_common_leftsecond. ((pfrep_position_cancel_first_witness_common_leftsecond+S (pfrep_power_cancel_first_witness_common_left)=(pfaa_length_cancel_first)) /\ ((((exists ff_h_pfp_cancel_first_witness_common_leftsecondentry. ff_h_pfp_cancel_first_witness_common_leftsecondentry + S (pfrep_right_cancel_first_witness_common_left) = S ((S (pfrep_position_cancel_first_witness_common_leftsecond)) * pfaa_left_c_cancel_first)) /\ exists ff_q_pfp_cancel_first_witness_common_leftsecondentry. pfaa_left_b_cancel_first = ff_q_pfp_cancel_first_witness_common_leftsecondentry * S ((S (pfrep_position_cancel_first_witness_common_leftsecond)) * pfaa_left_c_cancel_first) + (pfrep_right_cancel_first_witness_common_left)))))) \/ (((exists pfrep_gap_cancel_first_witness_common_leftsecondoutside. pfrep_gap_cancel_first_witness_common_leftsecondoutside+(pfaa_length_cancel_first)=(pfrep_power_cancel_first_witness_common_left)) /\ (((pfrep_right_cancel_first_witness_common_left)=0))))) -> pfrep_left_cancel_first_witness_common_left=pfrep_right_cancel_first_witness_common_left) /\ ((forall pfrep_power_cancel_first_witness_common_right pfrep_left_cancel_first_witness_common_right pfrep_right_cancel_first_witness_common_right. ((exists pfrep_position_cancel_first_witness_common_rightfirst. ((pfrep_position_cancel_first_witness_common_rightfirst+S (pfrep_power_cancel_first_witness_common_right)=(M)) /\ ((((exists ff_h_pfp_cancel_first_witness_common_rightfirstentry. ff_h_pfp_cancel_first_witness_common_rightfirstentry + S (pfrep_left_cancel_first_witness_common_right) = S ((S (pfrep_position_cancel_first_witness_common_rightfirst)) * bc)) /\ exists ff_q_pfp_cancel_first_witness_common_rightfirstentry. bb = ff_q_pfp_cancel_first_witness_common_rightfirstentry * S ((S (pfrep_position_cancel_first_witness_common_rightfirst)) * bc) + (pfrep_left_cancel_first_witness_common_right)))))) \/ (((exists pfrep_gap_cancel_first_witness_common_rightfirstoutside. pfrep_gap_cancel_first_witness_common_rightfirstoutside+(M)=(pfrep_power_cancel_first_witness_common_right)) /\ (((pfrep_left_cancel_first_witness_common_right)=0))))) -> ((exists pfrep_position_cancel_first_witness_common_rightsecond. ((pfrep_position_cancel_first_witness_common_rightsecond+S (pfrep_power_cancel_first_witness_common_right)=(pfaa_length_cancel_first)) /\ ((((exists ff_h_pfp_cancel_first_witness_common_rightsecondentry. ff_h_pfp_cancel_first_witness_common_rightsecondentry + S (pfrep_right_cancel_first_witness_common_right) = S ((S (pfrep_position_cancel_first_witness_common_rightsecond)) * pfaa_right_c_cancel_first)) /\ exists ff_q_pfp_cancel_first_witness_common_rightsecondentry. pfaa_right_b_cancel_first = ff_q_pfp_cancel_first_witness_common_rightsecondentry * S ((S (pfrep_position_cancel_first_witness_common_rightsecond)) * pfaa_right_c_cancel_first) + (pfrep_right_cancel_first_witness_common_right)))))) \/ (((exists pfrep_gap_cancel_first_witness_common_rightsecondoutside. pfrep_gap_cancel_first_witness_common_rightsecondoutside+(pfaa_length_cancel_first)=(pfrep_power_cancel_first_witness_common_right)) /\ (((pfrep_right_cancel_first_witness_common_right)=0))))) -> pfrep_left_cancel_first_witness_common_right=pfrep_right_cancel_first_witness_common_right)))) /\ (((forall pfp_index_cancel_first_witness_operation. (exists pfa_gap_cancel_first_witness_operationindex. pfa_gap_cancel_first_witness_operationindex + S (pfp_index_cancel_first_witness_operation) = (pfaa_length_cancel_first)) -> exists pfp_left_cancel_first_witness_operation pfp_right_cancel_first_witness_operation pfp_value_cancel_first_witness_operation. ((((exists ff_h_pfp_cancel_first_witness_operationleft. ff_h_pfp_cancel_first_witness_operationleft + S (pfp_left_cancel_first_witness_operation) = S ((S (pfp_index_cancel_first_witness_operation)) * pfaa_left_c_cancel_first)) /\ exists ff_q_pfp_cancel_first_witness_operationleft. pfaa_left_b_cancel_first = ff_q_pfp_cancel_first_witness_operationleft * S ((S (pfp_index_cancel_first_witness_operation)) * pfaa_left_c_cancel_first) + (pfp_left_cancel_first_witness_operation))) /\ (((((exists ff_h_pfp_cancel_first_witness_operationright. ff_h_pfp_cancel_first_witness_operationright + S (pfp_right_cancel_first_witness_operation) = S ((S (pfp_index_cancel_first_witness_operation)) * pfaa_right_c_cancel_first)) /\ exists ff_q_pfp_cancel_first_witness_operationright. pfaa_right_b_cancel_first = ff_q_pfp_cancel_first_witness_operationright * S ((S (pfp_index_cancel_first_witness_operation)) * pfaa_right_c_cancel_first) + (pfp_right_cancel_first_witness_operation))) /\ (((((exists ff_h_pfp_cancel_first_witness_operationtarget. ff_h_pfp_cancel_first_witness_operationtarget + S (pfp_value_cancel_first_witness_operation) = S ((S (pfp_index_cancel_first_witness_operation)) * pfaa_sum_c_cancel_first)) /\ exists ff_q_pfp_cancel_first_witness_operationtarget. pfaa_sum_b_cancel_first = ff_q_pfp_cancel_first_witness_operationtarget * S ((S (pfp_index_cancel_first_witness_operation)) * pfaa_sum_c_cancel_first) + (pfp_value_cancel_first_witness_operation))) /\ ((((exists pfa_gap_cancel_first_witness_operationoperationleft. pfa_gap_cancel_first_witness_operationoperationleft + S (pfp_left_cancel_first_witness_operation) = (p)) /\ (((exists pfa_gap_cancel_first_witness_operationoperationright. pfa_gap_cancel_first_witness_operationoperationright + S (pfp_right_cancel_first_witness_operation) = (p)) /\ ((((exists pfa_gap_cancel_first_witness_operationoperationresultbound. pfa_gap_cancel_first_witness_operationoperationresultbound + S (pfp_value_cancel_first_witness_operation) = (p)) /\ ((exists pfa_offset_left_cancel_first_witness_operationoperationresultcongruence pfa_offset_right_cancel_first_witness_operationoperationresultcongruence. ((pfp_left_cancel_first_witness_operation) + (pfp_right_cancel_first_witness_operation)) + (p) * pfa_offset_left_cancel_first_witness_operationoperationresultcongruence = (pfp_value_cancel_first_witness_operation) + (p) * pfa_offset_right_cancel_first_witness_operationoperationresultcongruence)))))))))))))))) /\ ((forall pfrep_power_cancel_first_witness_output pfrep_left_cancel_first_witness_output pfrep_right_cancel_first_witness_output. ((exists pfrep_position_cancel_first_witness_outputfirst. ((pfrep_position_cancel_first_witness_outputfirst+S (pfrep_power_cancel_first_witness_output)=(pfaa_length_cancel_first)) /\ ((((exists ff_h_pfp_cancel_first_witness_outputfirstentry. ff_h_pfp_cancel_first_witness_outputfirstentry + S (pfrep_left_cancel_first_witness_output) = S ((S (pfrep_position_cancel_first_witness_outputfirst)) * pfaa_sum_c_cancel_first)) /\ exists ff_q_pfp_cancel_first_witness_outputfirstentry. pfaa_sum_b_cancel_first = ff_q_pfp_cancel_first_witness_outputfirstentry * S ((S (pfrep_position_cancel_first_witness_outputfirst)) * pfaa_sum_c_cancel_first) + (pfrep_left_cancel_first_witness_output)))))) \/ (((exists pfrep_gap_cancel_first_witness_outputfirstoutside. pfrep_gap_cancel_first_witness_outputfirstoutside+(pfaa_length_cancel_first)=(pfrep_power_cancel_first_witness_output)) /\ (((pfrep_left_cancel_first_witness_output)=0))))) -> ((exists pfrep_position_cancel_first_witness_outputsecond. ((pfrep_position_cancel_first_witness_outputsecond+S (pfrep_power_cancel_first_witness_output)=(N)) /\ ((((exists ff_h_pfp_cancel_first_witness_outputsecondentry. ff_h_pfp_cancel_first_witness_outputsecondentry + S (pfrep_right_cancel_first_witness_output) = S ((S (pfrep_position_cancel_first_witness_outputsecond)) * rc)) /\ exists ff_q_pfp_cancel_first_witness_outputsecondentry. rb = ff_q_pfp_cancel_first_witness_outputsecondentry * S ((S (pfrep_position_cancel_first_witness_outputsecond)) * rc) + (pfrep_right_cancel_first_witness_output)))))) \/ (((exists pfrep_gap_cancel_first_witness_outputsecondoutside. pfrep_gap_cancel_first_witness_outputsecondoutside+(N)=(pfrep_power_cancel_first_witness_output)) /\ (((pfrep_right_cancel_first_witness_output)=0))))) -> pfrep_left_cancel_first_witness_output=pfrep_right_cancel_first_witness_output))))))))))))) -> (((forall fom_index_pfp_cancel_second_left_bounded. (exists fom_gap_pfp_cancel_second_left_bounded_index_bound. fom_gap_pfp_cancel_second_left_bounded_index_bound + S (fom_index_pfp_cancel_second_left_bounded) = L) -> exists fom_value_pfp_cancel_second_left_bounded. ((((exists fom_beta_height_pfp_cancel_second_left_bounded_entry. fom_beta_height_pfp_cancel_second_left_bounded_entry + S (fom_value_pfp_cancel_second_left_bounded) = S ((S (fom_index_pfp_cancel_second_left_bounded)) * ac)) /\ exists fom_beta_quotient_pfp_cancel_second_left_bounded_entry. ab = fom_beta_quotient_pfp_cancel_second_left_bounded_entry * S ((S (fom_index_pfp_cancel_second_left_bounded)) * ac) + (fom_value_pfp_cancel_second_left_bounded))) /\ (exists fom_gap_pfp_cancel_second_left_bounded_value_bound. fom_gap_pfp_cancel_second_left_bounded_value_bound + S (fom_value_pfp_cancel_second_left_bounded) = p))) /\ (((forall fom_index_pfp_cancel_second_right_bounded. (exists fom_gap_pfp_cancel_second_right_bounded_index_bound. fom_gap_pfp_cancel_second_right_bounded_index_bound + S (fom_index_pfp_cancel_second_right_bounded) = J) -> exists fom_value_pfp_cancel_second_right_bounded. ((((exists fom_beta_height_pfp_cancel_second_right_bounded_entry. fom_beta_height_pfp_cancel_second_right_bounded_entry + S (fom_value_pfp_cancel_second_right_bounded) = S ((S (fom_index_pfp_cancel_second_right_bounded)) * cc)) /\ exists fom_beta_quotient_pfp_cancel_second_right_bounded_entry. cb = fom_beta_quotient_pfp_cancel_second_right_bounded_entry * S ((S (fom_index_pfp_cancel_second_right_bounded)) * cc) + (fom_value_pfp_cancel_second_right_bounded))) /\ (exists fom_gap_pfp_cancel_second_right_bounded_value_bound. fom_gap_pfp_cancel_second_right_bounded_value_bound + S (fom_value_pfp_cancel_second_right_bounded) = p))) /\ (((forall fom_index_pfp_cancel_second_result_bounded. (exists fom_gap_pfp_cancel_second_result_bounded_index_bound. fom_gap_pfp_cancel_second_result_bounded_index_bound + S (fom_index_pfp_cancel_second_result_bounded) = N) -> exists fom_value_pfp_cancel_second_result_bounded. ((((exists fom_beta_height_pfp_cancel_second_result_bounded_entry. fom_beta_height_pfp_cancel_second_result_bounded_entry + S (fom_value_pfp_cancel_second_result_bounded) = S ((S (fom_index_pfp_cancel_second_result_bounded)) * rc)) /\ exists fom_beta_quotient_pfp_cancel_second_result_bounded_entry. rb = fom_beta_quotient_pfp_cancel_second_result_bounded_entry * S ((S (fom_index_pfp_cancel_second_result_bounded)) * rc) + (fom_value_pfp_cancel_second_result_bounded))) /\ (exists fom_gap_pfp_cancel_second_result_bounded_value_bound. fom_gap_pfp_cancel_second_result_bounded_value_bound + S (fom_value_pfp_cancel_second_result_bounded) = p))) /\ ((exists pfaa_left_b_cancel_second pfaa_left_c_cancel_second pfaa_right_b_cancel_second pfaa_right_c_cancel_second pfaa_sum_b_cancel_second pfaa_sum_c_cancel_second pfaa_length_cancel_second. ((((forall pfrep_power_cancel_second_witness_common_left pfrep_left_cancel_second_witness_common_left pfrep_right_cancel_second_witness_common_left. ((exists pfrep_position_cancel_second_witness_common_leftfirst. ((pfrep_position_cancel_second_witness_common_leftfirst+S (pfrep_power_cancel_second_witness_common_left)=(L)) /\ ((((exists ff_h_pfp_cancel_second_witness_common_leftfirstentry. ff_h_pfp_cancel_second_witness_common_leftfirstentry + S (pfrep_left_cancel_second_witness_common_left) = S ((S (pfrep_position_cancel_second_witness_common_leftfirst)) * ac)) /\ exists ff_q_pfp_cancel_second_witness_common_leftfirstentry. ab = ff_q_pfp_cancel_second_witness_common_leftfirstentry * S ((S (pfrep_position_cancel_second_witness_common_leftfirst)) * ac) + (pfrep_left_cancel_second_witness_common_left)))))) \/ (((exists pfrep_gap_cancel_second_witness_common_leftfirstoutside. pfrep_gap_cancel_second_witness_common_leftfirstoutside+(L)=(pfrep_power_cancel_second_witness_common_left)) /\ (((pfrep_left_cancel_second_witness_common_left)=0))))) -> ((exists pfrep_position_cancel_second_witness_common_leftsecond. ((pfrep_position_cancel_second_witness_common_leftsecond+S (pfrep_power_cancel_second_witness_common_left)=(pfaa_length_cancel_second)) /\ ((((exists ff_h_pfp_cancel_second_witness_common_leftsecondentry. ff_h_pfp_cancel_second_witness_common_leftsecondentry + S (pfrep_right_cancel_second_witness_common_left) = S ((S (pfrep_position_cancel_second_witness_common_leftsecond)) * pfaa_left_c_cancel_second)) /\ exists ff_q_pfp_cancel_second_witness_common_leftsecondentry. pfaa_left_b_cancel_second = ff_q_pfp_cancel_second_witness_common_leftsecondentry * S ((S (pfrep_position_cancel_second_witness_common_leftsecond)) * pfaa_left_c_cancel_second) + (pfrep_right_cancel_second_witness_common_left)))))) \/ (((exists pfrep_gap_cancel_second_witness_common_leftsecondoutside. pfrep_gap_cancel_second_witness_common_leftsecondoutside+(pfaa_length_cancel_second)=(pfrep_power_cancel_second_witness_common_left)) /\ (((pfrep_right_cancel_second_witness_common_left)=0))))) -> pfrep_left_cancel_second_witness_common_left=pfrep_right_cancel_second_witness_common_left) /\ ((forall pfrep_power_cancel_second_witness_common_right pfrep_left_cancel_second_witness_common_right pfrep_right_cancel_second_witness_common_right. ((exists pfrep_position_cancel_second_witness_common_rightfirst. ((pfrep_position_cancel_second_witness_common_rightfirst+S (pfrep_power_cancel_second_witness_common_right)=(J)) /\ ((((exists ff_h_pfp_cancel_second_witness_common_rightfirstentry. ff_h_pfp_cancel_second_witness_common_rightfirstentry + S (pfrep_left_cancel_second_witness_common_right) = S ((S (pfrep_position_cancel_second_witness_common_rightfirst)) * cc)) /\ exists ff_q_pfp_cancel_second_witness_common_rightfirstentry. cb = ff_q_pfp_cancel_second_witness_common_rightfirstentry * S ((S (pfrep_position_cancel_second_witness_common_rightfirst)) * cc) + (pfrep_left_cancel_second_witness_common_right)))))) \/ (((exists pfrep_gap_cancel_second_witness_common_rightfirstoutside. pfrep_gap_cancel_second_witness_common_rightfirstoutside+(J)=(pfrep_power_cancel_second_witness_common_right)) /\ (((pfrep_left_cancel_second_witness_common_right)=0))))) -> ((exists pfrep_position_cancel_second_witness_common_rightsecond. ((pfrep_position_cancel_second_witness_common_rightsecond+S (pfrep_power_cancel_second_witness_common_right)=(pfaa_length_cancel_second)) /\ ((((exists ff_h_pfp_cancel_second_witness_common_rightsecondentry. ff_h_pfp_cancel_second_witness_common_rightsecondentry + S (pfrep_right_cancel_second_witness_common_right) = S ((S (pfrep_position_cancel_second_witness_common_rightsecond)) * pfaa_right_c_cancel_second)) /\ exists ff_q_pfp_cancel_second_witness_common_rightsecondentry. pfaa_right_b_cancel_second = ff_q_pfp_cancel_second_witness_common_rightsecondentry * S ((S (pfrep_position_cancel_second_witness_common_rightsecond)) * pfaa_right_c_cancel_second) + (pfrep_right_cancel_second_witness_common_right)))))) \/ (((exists pfrep_gap_cancel_second_witness_common_rightsecondoutside. pfrep_gap_cancel_second_witness_common_rightsecondoutside+(pfaa_length_cancel_second)=(pfrep_power_cancel_second_witness_common_right)) /\ (((pfrep_right_cancel_second_witness_common_right)=0))))) -> pfrep_left_cancel_second_witness_common_right=pfrep_right_cancel_second_witness_common_right)))) /\ (((forall pfp_index_cancel_second_witness_operation. (exists pfa_gap_cancel_second_witness_operationindex. pfa_gap_cancel_second_witness_operationindex + S (pfp_index_cancel_second_witness_operation) = (pfaa_length_cancel_second)) -> exists pfp_left_cancel_second_witness_operation pfp_right_cancel_second_witness_operation pfp_value_cancel_second_witness_operation. ((((exists ff_h_pfp_cancel_second_witness_operationleft. ff_h_pfp_cancel_second_witness_operationleft + S (pfp_left_cancel_second_witness_operation) = S ((S (pfp_index_cancel_second_witness_operation)) * pfaa_left_c_cancel_second)) /\ exists ff_q_pfp_cancel_second_witness_operationleft. pfaa_left_b_cancel_second = ff_q_pfp_cancel_second_witness_operationleft * S ((S (pfp_index_cancel_second_witness_operation)) * pfaa_left_c_cancel_second) + (pfp_left_cancel_second_witness_operation))) /\ (((((exists ff_h_pfp_cancel_second_witness_operationright. ff_h_pfp_cancel_second_witness_operationright + S (pfp_right_cancel_second_witness_operation) = S ((S (pfp_index_cancel_second_witness_operation)) * pfaa_right_c_cancel_second)) /\ exists ff_q_pfp_cancel_second_witness_operationright. pfaa_right_b_cancel_second = ff_q_pfp_cancel_second_witness_operationright * S ((S (pfp_index_cancel_second_witness_operation)) * pfaa_right_c_cancel_second) + (pfp_right_cancel_second_witness_operation))) /\ (((((exists ff_h_pfp_cancel_second_witness_operationtarget. ff_h_pfp_cancel_second_witness_operationtarget + S (pfp_value_cancel_second_witness_operation) = S ((S (pfp_index_cancel_second_witness_operation)) * pfaa_sum_c_cancel_second)) /\ exists ff_q_pfp_cancel_second_witness_operationtarget. pfaa_sum_b_cancel_second = ff_q_pfp_cancel_second_witness_operationtarget * S ((S (pfp_index_cancel_second_witness_operation)) * pfaa_sum_c_cancel_second) + (pfp_value_cancel_second_witness_operation))) /\ ((((exists pfa_gap_cancel_second_witness_operationoperationleft. pfa_gap_cancel_second_witness_operationoperationleft + S (pfp_left_cancel_second_witness_operation) = (p)) /\ (((exists pfa_gap_cancel_second_witness_operationoperationright. pfa_gap_cancel_second_witness_operationoperationright + S (pfp_right_cancel_second_witness_operation) = (p)) /\ ((((exists pfa_gap_cancel_second_witness_operationoperationresultbound. pfa_gap_cancel_second_witness_operationoperationresultbound + S (pfp_value_cancel_second_witness_operation) = (p)) /\ ((exists pfa_offset_left_cancel_second_witness_operationoperationresultcongruence pfa_offset_right_cancel_second_witness_operationoperationresultcongruence. ((pfp_left_cancel_second_witness_operation) + (pfp_right_cancel_second_witness_operation)) + (p) * pfa_offset_left_cancel_second_witness_operationoperationresultcongruence = (pfp_value_cancel_second_witness_operation) + (p) * pfa_offset_right_cancel_second_witness_operationoperationresultcongruence)))))))))))))))) /\ ((forall pfrep_power_cancel_second_witness_output pfrep_left_cancel_second_witness_output pfrep_right_cancel_second_witness_output. ((exists pfrep_position_cancel_second_witness_outputfirst. ((pfrep_position_cancel_second_witness_outputfirst+S (pfrep_power_cancel_second_witness_output)=(pfaa_length_cancel_second)) /\ ((((exists ff_h_pfp_cancel_second_witness_outputfirstentry. ff_h_pfp_cancel_second_witness_outputfirstentry + S (pfrep_left_cancel_second_witness_output) = S ((S (pfrep_position_cancel_second_witness_outputfirst)) * pfaa_sum_c_cancel_second)) /\ exists ff_q_pfp_cancel_second_witness_outputfirstentry. pfaa_sum_b_cancel_second = ff_q_pfp_cancel_second_witness_outputfirstentry * S ((S (pfrep_position_cancel_second_witness_outputfirst)) * pfaa_sum_c_cancel_second) + (pfrep_left_cancel_second_witness_output)))))) \/ (((exists pfrep_gap_cancel_second_witness_outputfirstoutside. pfrep_gap_cancel_second_witness_outputfirstoutside+(pfaa_length_cancel_second)=(pfrep_power_cancel_second_witness_output)) /\ (((pfrep_left_cancel_second_witness_output)=0))))) -> ((exists pfrep_position_cancel_second_witness_outputsecond. ((pfrep_position_cancel_second_witness_outputsecond+S (pfrep_power_cancel_second_witness_output)=(N)) /\ ((((exists ff_h_pfp_cancel_second_witness_outputsecondentry. ff_h_pfp_cancel_second_witness_outputsecondentry + S (pfrep_right_cancel_second_witness_output) = S ((S (pfrep_position_cancel_second_witness_outputsecond)) * rc)) /\ exists ff_q_pfp_cancel_second_witness_outputsecondentry. rb = ff_q_pfp_cancel_second_witness_outputsecondentry * S ((S (pfrep_position_cancel_second_witness_outputsecond)) * rc) + (pfrep_right_cancel_second_witness_output)))))) \/ (((exists pfrep_gap_cancel_second_witness_outputsecondoutside. pfrep_gap_cancel_second_witness_outputsecondoutside+(N)=(pfrep_power_cancel_second_witness_output)) /\ (((pfrep_right_cancel_second_witness_output)=0))))) -> pfrep_left_cancel_second_witness_output=pfrep_right_cancel_second_witness_output))))))))))))) -> (forall pfrep_power_cancel_result pfrep_left_cancel_result pfrep_right_cancel_result. ((exists pfrep_position_cancel_resultfirst. ((pfrep_position_cancel_resultfirst+S (pfrep_power_cancel_result)=(M)) /\ ((((exists ff_h_pfp_cancel_resultfirstentry. ff_h_pfp_cancel_resultfirstentry + S (pfrep_left_cancel_result) = S ((S (pfrep_position_cancel_resultfirst)) * bc)) /\ exists ff_q_pfp_cancel_resultfirstentry. bb = ff_q_pfp_cancel_resultfirstentry * S ((S (pfrep_position_cancel_resultfirst)) * bc) + (pfrep_left_cancel_result)))))) \/ (((exists pfrep_gap_cancel_resultfirstoutside. pfrep_gap_cancel_resultfirstoutside+(M)=(pfrep_power_cancel_result)) /\ (((pfrep_left_cancel_result)=0))))) -> ((exists pfrep_position_cancel_resultsecond. ((pfrep_position_cancel_resultsecond+S (pfrep_power_cancel_result)=(J)) /\ ((((exists ff_h_pfp_cancel_resultsecondentry. ff_h_pfp_cancel_resultsecondentry + S (pfrep_right_cancel_result) = S ((S (pfrep_position_cancel_resultsecond)) * cc)) /\ exists ff_q_pfp_cancel_resultsecondentry. cb = ff_q_pfp_cancel_resultsecondentry * S ((S (pfrep_position_cancel_resultsecond)) * cc) + (pfrep_right_cancel_result)))))) \/ (((exists pfrep_gap_cancel_resultsecondoutside. pfrep_gap_cancel_resultsecondoutside+(J)=(pfrep_power_cancel_result)) /\ (((pfrep_right_cancel_result)=0))))) -> pfrep_left_cancel_result=pfrep_right_cancel_result)Constructive proof overview
Generated structural guide
Cancel a common addend from actual aligned sums: construct four real common-length prefixes, realize both additions and apply checked coefficient subtraction functionality.
The unchanged tactic script uses 11 declared prerequisites and contains 279 exact native proof lines.
Alpha v34 checked-use · first admitted v34 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
PG003D prime_field_polynomial_aligned_add_bounded PG0035 prime_field_polynomial_bounded_representative_at_length_exists le_add_right Alpha theorem; checked-use authorized le_refl Alpha theorem; checked-use authorized le_trans Alpha theorem; checked-use authorized PG0043 prime_field_polynomial_aligned_add_realize prime_field_polynomial_equivalent_transitive Alpha theorem; checked-use authorized prime_field_polynomial_equal_implies_equivalent Alpha theorem; checked-use authorized prime_field_polynomial_equivalent_symmetric Alpha theorem; checked-use authorized prime_field_polynomial_subtract_functional Alpha theorem; checked-use authorized prime_field_polynomial_subtract_from_add Alpha theorem; checked-use authorizedDirect 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 (3)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–16
03Establish hbboundL17–26
Establish this local claim before using it. It is not an additional assumption.
- L17
have hbbound : BetaPrefixInto(ab,ac,L,p) ∧ (BetaPrefixInto(bb,bc,M,p) ∧ BetaPrefixInto(rb,rc,N,p))Definitions: BetaPrefixInto - L18
specialize prime_field_polynomial_aligned_add_bounded (p) - L19
specialize prime_field_polynomial_aligned_add_bounded (ab) - L20
specialize prime_field_polynomial_aligned_add_bounded (ac) - L21
specialize prime_field_polynomial_aligned_add_bounded (L) - L22
specialize prime_field_polynomial_aligned_add_bounded (bb) - L23
specialize prime_field_polynomial_aligned_add_bounded (bc) - L24
specialize prime_field_polynomial_aligned_add_bounded (M) - L25
specialize prime_field_polynomial_aligned_add_bounded (rb) - L26
specialize prime_field_polynomial_aligned_add_bounded (rc)
04Use earlier factsL27–29
05Separate the logical casesL30–31
06Establish hcboundL32–41
Establish this local claim before using it. It is not an additional assumption.
- L32
have hcbound : BetaPrefixInto(ab,ac,L,p) ∧ (BetaPrefixInto(cb,cc,J,p) ∧ BetaPrefixInto(rb,rc,N,p))Definitions: BetaPrefixInto - L33
specialize prime_field_polynomial_aligned_add_bounded (p) - L34
specialize prime_field_polynomial_aligned_add_bounded (ab) - L35
specialize prime_field_polynomial_aligned_add_bounded (ac) - L36
specialize prime_field_polynomial_aligned_add_bounded (L) - L37
specialize prime_field_polynomial_aligned_add_bounded (cb) - L38
specialize prime_field_polynomial_aligned_add_bounded (cc) - L39
specialize prime_field_polynomial_aligned_add_bounded (J) - L40
specialize prime_field_polynomial_aligned_add_bounded (rb) - L41
specialize prime_field_polynomial_aligned_add_bounded (rc)
07Use earlier factsL42–44
08Separate the logical casesL45–46
09Establish cancel_representative_0L47–56
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field polynomial bounded representative at length exists.
- L47
have cancel_representative_0 : ∃ cancel_representative_0_code. ∃ cancel_representative_0_scale. BetaPrefixInto(cancel_representative_0_code,cancel_representative_0_scale,L + (M + (J + N)),p) ∧ PolynomialEquivalent(ab,ac,L,cancel_representative_0_code,cancel_representative_0_scale,L + (M + (J + N)))Definitions: BetaPrefixIntoPolynomialEquivalent - L48
specialize prime_field_polynomial_bounded_representative_at_length_exists (p) - L49
specialize prime_field_polynomial_bounded_representative_at_length_exists (ab) - L50
specialize prime_field_polynomial_bounded_representative_at_length_exists (ac) - L51
specialize prime_field_polynomial_bounded_representative_at_length_exists (L) - L52
specialize prime_field_polynomial_bounded_representative_at_length_exists ((L)+((M)+((J)+(N)))) - L53
apply prime_field_polynomial_bounded_representative_at_length_exists - L54
exact hp - L55
exact hbbound_left - L56
specialize le_add_right (L)
10Use earlier factsL57–58
11Separate the logical casesL59–61
12Establish cancel_representative_1L62–70
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field polynomial bounded representative at length exists.
- L62
have cancel_representative_1 : ∃ cancel_representative_1_code. ∃ cancel_representative_1_scale. BetaPrefixInto(cancel_representative_1_code,cancel_representative_1_scale,L + (M + (J + N)),p) ∧ PolynomialEquivalent(bb,bc,M,cancel_representative_1_code,cancel_representative_1_scale,L + (M + (J + N)))Definitions: BetaPrefixIntoPolynomialEquivalent - L63
specialize prime_field_polynomial_bounded_representative_at_length_exists (p) - L64
specialize prime_field_polynomial_bounded_representative_at_length_exists (bb) - L65
specialize prime_field_polynomial_bounded_representative_at_length_exists (bc) - L66
specialize prime_field_polynomial_bounded_representative_at_length_exists (M) - L67
specialize prime_field_polynomial_bounded_representative_at_length_exists ((L)+((M)+((J)+(N)))) - L68
apply prime_field_polynomial_bounded_representative_at_length_exists - L69
exact hp - L70
exact hbbound_right_left
13Establish length_bound_cancel_representative_1L71–79
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le add right.
- L71
have length_bound_cancel_representative_1 : exists pfrep_gap_cancel_representative_1_inner. pfrep_gap_cancel_representative_1_inner+(M)=((M)+((J)+(N))) - L72
specialize le_add_right (M) - L73
specialize le_add_right ((J)+(N)) - L74
apply le_add_right - L75
specialize le_trans (M) - L76
specialize le_trans ((M)+((J)+(N))) - L77
specialize le_trans ((L)+((M)+((J)+(N)))) - L78
apply le_trans - L79
exact length_bound_cancel_representative_1
14Construct an explicit witnessL80–80
Supply the displayed value, then prove that it has the required property.
- L80
exists L
15Calculate and transport equalitiesL81–81
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L81
refl
16Separate the logical casesL82–84
17Establish cancel_representative_2L85–93
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field polynomial bounded representative at length exists.
- L85
have cancel_representative_2 : ∃ cancel_representative_2_code. ∃ cancel_representative_2_scale. BetaPrefixInto(cancel_representative_2_code,cancel_representative_2_scale,L + (M + (J + N)),p) ∧ PolynomialEquivalent(cb,cc,J,cancel_representative_2_code,cancel_representative_2_scale,L + (M + (J + N)))Definitions: BetaPrefixIntoPolynomialEquivalent - L86
specialize prime_field_polynomial_bounded_representative_at_length_exists (p) - L87
specialize prime_field_polynomial_bounded_representative_at_length_exists (cb) - L88
specialize prime_field_polynomial_bounded_representative_at_length_exists (cc) - L89
specialize prime_field_polynomial_bounded_representative_at_length_exists (J) - L90
specialize prime_field_polynomial_bounded_representative_at_length_exists ((L)+((M)+((J)+(N)))) - L91
apply prime_field_polynomial_bounded_representative_at_length_exists - L92
exact hp - L93
exact hcbound_right_left
18Establish length_bound_cancel_representative_2L94–94
Establish this local claim before using it. It is not an additional assumption.
- L94
have length_bound_cancel_representative_2 : exists pfrep_gap_cancel_representative_2_inner. pfrep_gap_cancel_representative_2_inner+(J)=((M)+((J)+(N)))
19Establish length_bound_cancel_representative_2_innerL95–103
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le add right.
- L95
have length_bound_cancel_representative_2_inner : exists pfrep_gap_cancel_representative_2_inner_inner. pfrep_gap_cancel_representative_2_inner_inner+(J)=((J)+(N)) - L96
specialize le_add_right (J) - L97
specialize le_add_right (N) - L98
apply le_add_right - L99
specialize le_trans (J) - L100
specialize le_trans ((J)+(N)) - L101
specialize le_trans ((M)+((J)+(N))) - L102
apply le_trans - L103
exact length_bound_cancel_representative_2_inner
20Construct an explicit witnessL104–104
Supply the displayed value, then prove that it has the required property.
- L104
exists M
21Calculate and transport equalitiesL105–105
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L105
refl
22Use earlier factsL106–110
23Construct an explicit witnessL111–111
Supply the displayed value, then prove that it has the required property.
- L111
exists L
24Calculate and transport equalitiesL112–112
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L112
refl
25Separate the logical casesL113–115
26Establish cancel_representative_3L116–124
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime field polynomial bounded representative at length exists.
- L116
have cancel_representative_3 : ∃ cancel_representative_3_code. ∃ cancel_representative_3_scale. BetaPrefixInto(cancel_representative_3_code,cancel_representative_3_scale,L + (M + (J + N)),p) ∧ PolynomialEquivalent(rb,rc,N,cancel_representative_3_code,cancel_representative_3_scale,L + (M + (J + N)))Definitions: BetaPrefixIntoPolynomialEquivalent - L117
specialize prime_field_polynomial_bounded_representative_at_length_exists (p) - L118
specialize prime_field_polynomial_bounded_representative_at_length_exists (rb) - L119
specialize prime_field_polynomial_bounded_representative_at_length_exists (rc) - L120
specialize prime_field_polynomial_bounded_representative_at_length_exists (N) - L121
specialize prime_field_polynomial_bounded_representative_at_length_exists ((L)+((M)+((J)+(N)))) - L122
apply prime_field_polynomial_bounded_representative_at_length_exists - L123
exact hp - L124
exact hbbound_right_right
27Establish length_bound_cancel_representative_3L125–125
Establish this local claim before using it. It is not an additional assumption.
- L125
have length_bound_cancel_representative_3 : exists pfrep_gap_cancel_representative_3_inner. pfrep_gap_cancel_representative_3_inner+(N)=((M)+((J)+(N)))
28Establish length_bound_cancel_representative_3_innerL126–126
Establish this local claim before using it. It is not an additional assumption.
- L126
have length_bound_cancel_representative_3_inner : exists pfrep_gap_cancel_representative_3_inner_inner. pfrep_gap_cancel_representative_3_inner_inner+(N)=((J)+(N))
29Establish length_bound_cancel_representative_3_inner_innerL127–134
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le refl.
- L127
have length_bound_cancel_representative_3_inner_inner : exists pfrep_gap_cancel_representative_3_inner_inner_inner. pfrep_gap_cancel_representative_3_inner_inner_inner+(N)=(N) - L128
specialize le_refl (N) - L129
apply le_refl - L130
specialize le_trans (N) - L131
specialize le_trans (N) - L132
specialize le_trans ((J)+(N)) - L133
apply le_trans - L134
exact length_bound_cancel_representative_3_inner_inner
30Construct an explicit witnessL135–135
Supply the displayed value, then prove that it has the required property.
- L135
exists J
31Calculate and transport equalitiesL136–136
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L136
refl
32Use earlier factsL137–141
33Construct an explicit witnessL142–142
Supply the displayed value, then prove that it has the required property.
- L142
exists M
34Calculate and transport equalitiesL143–143
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L143
refl
35Use earlier factsL144–148
36Construct an explicit witnessL149–149
Supply the displayed value, then prove that it has the required property.
- L149
exists L
37Calculate and transport equalitiesL150–150
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L150
refl
38Separate the logical casesL151–153
39Establish hfirstL154–163
Establish this local claim before using it. It is not an additional assumption.
- L154
have hfirst : FpPolyAdd(p,x,x1,x2,x3,x6,x7,L + (M + (J + N)))Definitions: FpPolyAdd - L155
specialize prime_field_polynomial_aligned_add_realize (p) - L156
specialize prime_field_polynomial_aligned_add_realize (ab) - L157
specialize prime_field_polynomial_aligned_add_realize (ac) - L158
specialize prime_field_polynomial_aligned_add_realize (L) - L159
specialize prime_field_polynomial_aligned_add_realize (bb) - L160
specialize prime_field_polynomial_aligned_add_realize (bc) - L161
specialize prime_field_polynomial_aligned_add_realize (M) - L162
specialize prime_field_polynomial_aligned_add_realize (rb) - L163
specialize prime_field_polynomial_aligned_add_realize (rc)
40Use earlier factsL164–173
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L164
specialize prime_field_polynomial_aligned_add_realize (N) - L165
specialize prime_field_polynomial_aligned_add_realize (x) - L166
specialize prime_field_polynomial_aligned_add_realize (x1) - L167
specialize prime_field_polynomial_aligned_add_realize (x2) - L168
specialize prime_field_polynomial_aligned_add_realize (x3) - L169
specialize prime_field_polynomial_aligned_add_realize (x6) - L170
specialize prime_field_polynomial_aligned_add_realize (x7) - L171
specialize prime_field_polynomial_aligned_add_realize ((L)+((M)+((J)+(N)))) - L172
apply prime_field_polynomial_aligned_add_realize - L173
exact hp
41Use earlier factsL174–177
42Separate the logical casesL178–178
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L178
split
43Use earlier factsL179–181
44Establish hsecondL182–191
Establish this local claim before using it. It is not an additional assumption.
- L182
have hsecond : FpPolyAdd(p,x,x1,x4,x5,x6,x7,L + (M + (J + N)))Definitions: FpPolyAdd - L183
specialize prime_field_polynomial_aligned_add_realize (p) - L184
specialize prime_field_polynomial_aligned_add_realize (ab) - L185
specialize prime_field_polynomial_aligned_add_realize (ac) - L186
specialize prime_field_polynomial_aligned_add_realize (L) - L187
specialize prime_field_polynomial_aligned_add_realize (cb) - L188
specialize prime_field_polynomial_aligned_add_realize (cc) - L189
specialize prime_field_polynomial_aligned_add_realize (J) - L190
specialize prime_field_polynomial_aligned_add_realize (rb) - L191
specialize prime_field_polynomial_aligned_add_realize (rc)
45Use earlier factsL192–201
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L192
specialize prime_field_polynomial_aligned_add_realize (N) - L193
specialize prime_field_polynomial_aligned_add_realize (x) - L194
specialize prime_field_polynomial_aligned_add_realize (x1) - L195
specialize prime_field_polynomial_aligned_add_realize (x4) - L196
specialize prime_field_polynomial_aligned_add_realize (x5) - L197
specialize prime_field_polynomial_aligned_add_realize (x6) - L198
specialize prime_field_polynomial_aligned_add_realize (x7) - L199
specialize prime_field_polynomial_aligned_add_realize ((L)+((M)+((J)+(N)))) - L200
apply prime_field_polynomial_aligned_add_realize - L201
exact hp
46Use earlier factsL202–205
47Separate the logical casesL206–206
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L206
split
48Use earlier factsL207–209
49Establish heqL210–219
Establish this local claim before using it. It is not an additional assumption.
- L210
have heq : BetaPrefixEqual(x2,x3,x4,x5,L + (M + (J + N)))Definitions: BetaPrefixEqual - L211
specialize prime_field_polynomial_subtract_functional (p) - L212
specialize prime_field_polynomial_subtract_functional (x6) - L213
specialize prime_field_polynomial_subtract_functional (x7) - L214
specialize prime_field_polynomial_subtract_functional (x) - L215
specialize prime_field_polynomial_subtract_functional (x1) - L216
specialize prime_field_polynomial_subtract_functional (x2) - L217
specialize prime_field_polynomial_subtract_functional (x3) - L218
specialize prime_field_polynomial_subtract_functional (x4) - L219
specialize prime_field_polynomial_subtract_functional (x5)
50Use earlier factsL220–229
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L220
specialize prime_field_polynomial_subtract_functional ((L)+((M)+((J)+(N)))) - L221
apply prime_field_polynomial_subtract_functional - L222
specialize prime_field_polynomial_subtract_from_add (p) - L223
specialize prime_field_polynomial_subtract_from_add (x6) - L224
specialize prime_field_polynomial_subtract_from_add (x7) - L225
specialize prime_field_polynomial_subtract_from_add (x) - L226
specialize prime_field_polynomial_subtract_from_add (x1) - L227
specialize prime_field_polynomial_subtract_from_add (x2) - L228
specialize prime_field_polynomial_subtract_from_add (x3) - L229
specialize prime_field_polynomial_subtract_from_add ((L)+((M)+((J)+(N))))
51Use earlier factsL230–239
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L230
apply prime_field_polynomial_subtract_from_add - L231
exact hfirst - L232
specialize prime_field_polynomial_subtract_from_add (p) - L233
specialize prime_field_polynomial_subtract_from_add (x6) - L234
specialize prime_field_polynomial_subtract_from_add (x7) - L235
specialize prime_field_polynomial_subtract_from_add (x) - L236
specialize prime_field_polynomial_subtract_from_add (x1) - L237
specialize prime_field_polynomial_subtract_from_add (x4) - L238
specialize prime_field_polynomial_subtract_from_add (x5) - L239
specialize prime_field_polynomial_subtract_from_add ((L)+((M)+((J)+(N))))
52Use earlier factsL240–241
53Establish cancel_middleL242–251
Establish this local claim before using it. It is not an additional assumption.
- L242
have cancel_middle : PolynomialEquivalent(bb,bc,M,x4,x5,L + (M + (J + N)))Definitions: PolynomialEquivalent - L243
specialize prime_field_polynomial_equivalent_transitive (bb) - L244
specialize prime_field_polynomial_equivalent_transitive (bc) - L245
specialize prime_field_polynomial_equivalent_transitive (M) - L246
specialize prime_field_polynomial_equivalent_transitive (x2) - L247
specialize prime_field_polynomial_equivalent_transitive (x3) - L248
specialize prime_field_polynomial_equivalent_transitive ((L)+((M)+((J)+(N)))) - L249
specialize prime_field_polynomial_equivalent_transitive (x4) - L250
specialize prime_field_polynomial_equivalent_transitive (x5) - L251
specialize prime_field_polynomial_equivalent_transitive ((L)+((M)+((J)+(N))))
54Use earlier factsL252–261
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L252
apply prime_field_polynomial_equivalent_transitive - L253
exact cancel_representative_1_witness_witness_right - L254
specialize prime_field_polynomial_equal_implies_equivalent (x2) - L255
specialize prime_field_polynomial_equal_implies_equivalent (x3) - L256
specialize prime_field_polynomial_equal_implies_equivalent (x4) - L257
specialize prime_field_polynomial_equal_implies_equivalent (x5) - L258
specialize prime_field_polynomial_equal_implies_equivalent ((L)+((M)+((J)+(N)))) - L259
apply prime_field_polynomial_equal_implies_equivalent - L260
exact heq - L261
specialize prime_field_polynomial_equivalent_transitive (bb)
55Use earlier factsL262–271
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L262
specialize prime_field_polynomial_equivalent_transitive (bc) - L263
specialize prime_field_polynomial_equivalent_transitive (M) - L264
specialize prime_field_polynomial_equivalent_transitive (x4) - L265
specialize prime_field_polynomial_equivalent_transitive (x5) - L266
specialize prime_field_polynomial_equivalent_transitive ((L)+((M)+((J)+(N)))) - L267
specialize prime_field_polynomial_equivalent_transitive (cb) - L268
specialize prime_field_polynomial_equivalent_transitive (cc) - L269
specialize prime_field_polynomial_equivalent_transitive (J) - L270
apply prime_field_polynomial_equivalent_transitive - L271
exact cancel_middle
56Use earlier factsL272–279
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L272
specialize prime_field_polynomial_equivalent_symmetric (cb) - L273
specialize prime_field_polynomial_equivalent_symmetric (cc) - L274
specialize prime_field_polynomial_equivalent_symmetric (J) - L275
specialize prime_field_polynomial_equivalent_symmetric (x4) - L276
specialize prime_field_polynomial_equivalent_symmetric (x5) - L277
specialize prime_field_polynomial_equivalent_symmetric ((L)+((M)+((J)+(N)))) - L278
apply prime_field_polynomial_equivalent_symmetric - L279
exact cancel_representative_2_witness_witness_right
Original exact command ledger · 279 lines
- 0001
intro p - 0002
intro ab - 0003
intro ac - 0004
intro L - 0005
intro bb - 0006
intro bc - 0007
intro M - 0008
intro cb - 0009
intro cc - 0010
intro J - 0011
intro rb - 0012
intro rc - 0013
intro N - 0014
intro hp - 0015
intro hb - 0016
intro hc - 0017
have hbbound : ((forall fom_index_pfp_hbbound_0. (exists fom_gap_pfp_hbbound_0_index_bound. fom_gap_pfp_hbbound_0_index_bound + S (fom_index_pfp_hbbound_0) = L) -> exists fom_value_pfp_hbbound_0. ((((exists fom_beta_height_pfp_hbbound_0_entry. fom_beta_height_pfp_hbbound_0_entry + S (fom_value_pfp_hbbound_0) = S ((S (fom_index_pfp_hbbound_0)) * ac)) /\ exists fom_beta_quotient_pfp_hbbound_0_entry. ab = fom_beta_quotient_pfp_hbbound_0_entry * S ((S (fom_index_pfp_hbbound_0)) * ac) + (fom_value_pfp_hbbound_0))) /\ (exists fom_gap_pfp_hbbound_0_value_bound. fom_gap_pfp_hbbound_0_value_bound + S (fom_value_pfp_hbbound_0) = p))) /\ (((forall fom_index_pfp_hbbound_1. (exists fom_gap_pfp_hbbound_1_index_bound. fom_gap_pfp_hbbound_1_index_bound + S (fom_index_pfp_hbbound_1) = M) -> exists fom_value_pfp_hbbound_1. ((((exists fom_beta_height_pfp_hbbound_1_entry. fom_beta_height_pfp_hbbound_1_entry + S (fom_value_pfp_hbbound_1) = S ((S (fom_index_pfp_hbbound_1)) * bc)) /\ exists fom_beta_quotient_pfp_hbbound_1_entry. bb = fom_beta_quotient_pfp_hbbound_1_entry * S ((S (fom_index_pfp_hbbound_1)) * bc) + (fom_value_pfp_hbbound_1))) /\ (exists fom_gap_pfp_hbbound_1_value_bound. fom_gap_pfp_hbbound_1_value_bound + S (fom_value_pfp_hbbound_1) = p))) /\ ((forall fom_index_pfp_hbbound_2. (exists fom_gap_pfp_hbbound_2_index_bound. fom_gap_pfp_hbbound_2_index_bound + S (fom_index_pfp_hbbound_2) = N) -> exists fom_value_pfp_hbbound_2. ((((exists fom_beta_height_pfp_hbbound_2_entry. fom_beta_height_pfp_hbbound_2_entry + S (fom_value_pfp_hbbound_2) = S ((S (fom_index_pfp_hbbound_2)) * rc)) /\ exists fom_beta_quotient_pfp_hbbound_2_entry. rb = fom_beta_quotient_pfp_hbbound_2_entry * S ((S (fom_index_pfp_hbbound_2)) * rc) + (fom_value_pfp_hbbound_2))) /\ (exists fom_gap_pfp_hbbound_2_value_bound. fom_gap_pfp_hbbound_2_value_bound + S (fom_value_pfp_hbbound_2) = p))))))) - 0018
specialize prime_field_polynomial_aligned_add_bounded (p) - 0019
specialize prime_field_polynomial_aligned_add_bounded (ab) - 0020
specialize prime_field_polynomial_aligned_add_bounded (ac) - 0021
specialize prime_field_polynomial_aligned_add_bounded (L) - 0022
specialize prime_field_polynomial_aligned_add_bounded (bb) - 0023
specialize prime_field_polynomial_aligned_add_bounded (bc) - 0024
specialize prime_field_polynomial_aligned_add_bounded (M) - 0025
specialize prime_field_polynomial_aligned_add_bounded (rb) - 0026
specialize prime_field_polynomial_aligned_add_bounded (rc) - 0027
specialize prime_field_polynomial_aligned_add_bounded (N) - 0028
apply prime_field_polynomial_aligned_add_bounded - 0029
exact hb - 0030
cases hbbound - 0031
cases hbbound_right - 0032
have hcbound : ((forall fom_index_pfp_hcbound_0. (exists fom_gap_pfp_hcbound_0_index_bound. fom_gap_pfp_hcbound_0_index_bound + S (fom_index_pfp_hcbound_0) = L) -> exists fom_value_pfp_hcbound_0. ((((exists fom_beta_height_pfp_hcbound_0_entry. fom_beta_height_pfp_hcbound_0_entry + S (fom_value_pfp_hcbound_0) = S ((S (fom_index_pfp_hcbound_0)) * ac)) /\ exists fom_beta_quotient_pfp_hcbound_0_entry. ab = fom_beta_quotient_pfp_hcbound_0_entry * S ((S (fom_index_pfp_hcbound_0)) * ac) + (fom_value_pfp_hcbound_0))) /\ (exists fom_gap_pfp_hcbound_0_value_bound. fom_gap_pfp_hcbound_0_value_bound + S (fom_value_pfp_hcbound_0) = p))) /\ (((forall fom_index_pfp_hcbound_1. (exists fom_gap_pfp_hcbound_1_index_bound. fom_gap_pfp_hcbound_1_index_bound + S (fom_index_pfp_hcbound_1) = J) -> exists fom_value_pfp_hcbound_1. ((((exists fom_beta_height_pfp_hcbound_1_entry. fom_beta_height_pfp_hcbound_1_entry + S (fom_value_pfp_hcbound_1) = S ((S (fom_index_pfp_hcbound_1)) * cc)) /\ exists fom_beta_quotient_pfp_hcbound_1_entry. cb = fom_beta_quotient_pfp_hcbound_1_entry * S ((S (fom_index_pfp_hcbound_1)) * cc) + (fom_value_pfp_hcbound_1))) /\ (exists fom_gap_pfp_hcbound_1_value_bound. fom_gap_pfp_hcbound_1_value_bound + S (fom_value_pfp_hcbound_1) = p))) /\ ((forall fom_index_pfp_hcbound_2. (exists fom_gap_pfp_hcbound_2_index_bound. fom_gap_pfp_hcbound_2_index_bound + S (fom_index_pfp_hcbound_2) = N) -> exists fom_value_pfp_hcbound_2. ((((exists fom_beta_height_pfp_hcbound_2_entry. fom_beta_height_pfp_hcbound_2_entry + S (fom_value_pfp_hcbound_2) = S ((S (fom_index_pfp_hcbound_2)) * rc)) /\ exists fom_beta_quotient_pfp_hcbound_2_entry. rb = fom_beta_quotient_pfp_hcbound_2_entry * S ((S (fom_index_pfp_hcbound_2)) * rc) + (fom_value_pfp_hcbound_2))) /\ (exists fom_gap_pfp_hcbound_2_value_bound. fom_gap_pfp_hcbound_2_value_bound + S (fom_value_pfp_hcbound_2) = p))))))) - 0033
specialize prime_field_polynomial_aligned_add_bounded (p) - 0034
specialize prime_field_polynomial_aligned_add_bounded (ab) - 0035
specialize prime_field_polynomial_aligned_add_bounded (ac) - 0036
specialize prime_field_polynomial_aligned_add_bounded (L) - 0037
specialize prime_field_polynomial_aligned_add_bounded (cb) - 0038
specialize prime_field_polynomial_aligned_add_bounded (cc) - 0039
specialize prime_field_polynomial_aligned_add_bounded (J) - 0040
specialize prime_field_polynomial_aligned_add_bounded (rb) - 0041
specialize prime_field_polynomial_aligned_add_bounded (rc) - 0042
specialize prime_field_polynomial_aligned_add_bounded (N) - 0043
apply prime_field_polynomial_aligned_add_bounded - 0044
exact hc - 0045
cases hcbound - 0046
cases hcbound_right - 0047
have cancel_representative_0 : exists cancel_representative_0_code cancel_representative_0_scale. ((forall fom_index_pfp_cancel_representative_0_bounded. (exists fom_gap_pfp_cancel_representative_0_bounded_index_bound. fom_gap_pfp_cancel_representative_0_bounded_index_bound + S (fom_index_pfp_cancel_representative_0_bounded) = (L)+((M)+((J)+(N)))) -> exists fom_value_pfp_cancel_representative_0_bounded. ((((exists fom_beta_height_pfp_cancel_representative_0_bounded_entry. fom_beta_height_pfp_cancel_representative_0_bounded_entry + S (fom_value_pfp_cancel_representative_0_bounded) = S ((S (fom_index_pfp_cancel_representative_0_bounded)) * cancel_representative_0_scale)) /\ exists fom_beta_quotient_pfp_cancel_representative_0_bounded_entry. cancel_representative_0_code = fom_beta_quotient_pfp_cancel_representative_0_bounded_entry * S ((S (fom_index_pfp_cancel_representative_0_bounded)) * cancel_representative_0_scale) + (fom_value_pfp_cancel_representative_0_bounded))) /\ (exists fom_gap_pfp_cancel_representative_0_bounded_value_bound. fom_gap_pfp_cancel_representative_0_bounded_value_bound + S (fom_value_pfp_cancel_representative_0_bounded) = p))) /\ ((forall pfrep_power_cancel_representative_0_equivalent pfrep_left_cancel_representative_0_equivalent pfrep_right_cancel_representative_0_equivalent. ((exists pfrep_position_cancel_representative_0_equivalentfirst. ((pfrep_position_cancel_representative_0_equivalentfirst+S (pfrep_power_cancel_representative_0_equivalent)=(L)) /\ ((((exists ff_h_pfp_cancel_representative_0_equivalentfirstentry. ff_h_pfp_cancel_representative_0_equivalentfirstentry + S (pfrep_left_cancel_representative_0_equivalent) = S ((S (pfrep_position_cancel_representative_0_equivalentfirst)) * ac)) /\ exists ff_q_pfp_cancel_representative_0_equivalentfirstentry. ab = ff_q_pfp_cancel_representative_0_equivalentfirstentry * S ((S (pfrep_position_cancel_representative_0_equivalentfirst)) * ac) + (pfrep_left_cancel_representative_0_equivalent)))))) \/ (((exists pfrep_gap_cancel_representative_0_equivalentfirstoutside. pfrep_gap_cancel_representative_0_equivalentfirstoutside+(L)=(pfrep_power_cancel_representative_0_equivalent)) /\ (((pfrep_left_cancel_representative_0_equivalent)=0))))) -> ((exists pfrep_position_cancel_representative_0_equivalentsecond. ((pfrep_position_cancel_representative_0_equivalentsecond+S (pfrep_power_cancel_representative_0_equivalent)=((L)+((M)+((J)+(N))))) /\ ((((exists ff_h_pfp_cancel_representative_0_equivalentsecondentry. ff_h_pfp_cancel_representative_0_equivalentsecondentry + S (pfrep_right_cancel_representative_0_equivalent) = S ((S (pfrep_position_cancel_representative_0_equivalentsecond)) * cancel_representative_0_scale)) /\ exists ff_q_pfp_cancel_representative_0_equivalentsecondentry. cancel_representative_0_code = ff_q_pfp_cancel_representative_0_equivalentsecondentry * S ((S (pfrep_position_cancel_representative_0_equivalentsecond)) * cancel_representative_0_scale) + (pfrep_right_cancel_representative_0_equivalent)))))) \/ (((exists pfrep_gap_cancel_representative_0_equivalentsecondoutside. pfrep_gap_cancel_representative_0_equivalentsecondoutside+((L)+((M)+((J)+(N))))=(pfrep_power_cancel_representative_0_equivalent)) /\ (((pfrep_right_cancel_representative_0_equivalent)=0))))) -> pfrep_left_cancel_representative_0_equivalent=pfrep_right_cancel_representative_0_equivalent))) - 0048
specialize prime_field_polynomial_bounded_representative_at_length_exists (p) - 0049
specialize prime_field_polynomial_bounded_representative_at_length_exists (ab) - 0050
specialize prime_field_polynomial_bounded_representative_at_length_exists (ac) - 0051
specialize prime_field_polynomial_bounded_representative_at_length_exists (L) - 0052
specialize prime_field_polynomial_bounded_representative_at_length_exists ((L)+((M)+((J)+(N)))) - 0053
apply prime_field_polynomial_bounded_representative_at_length_exists - 0054
exact hp - 0055
exact hbbound_left - 0056
specialize le_add_right (L) - 0057
specialize le_add_right ((M)+((J)+(N))) - 0058
apply le_add_right - 0059
cases cancel_representative_0 - 0060
cases cancel_representative_0_witness - 0061
cases cancel_representative_0_witness_witness - 0062
have cancel_representative_1 : exists cancel_representative_1_code cancel_representative_1_scale. ((forall fom_index_pfp_cancel_representative_1_bounded. (exists fom_gap_pfp_cancel_representative_1_bounded_index_bound. fom_gap_pfp_cancel_representative_1_bounded_index_bound + S (fom_index_pfp_cancel_representative_1_bounded) = (L)+((M)+((J)+(N)))) -> exists fom_value_pfp_cancel_representative_1_bounded. ((((exists fom_beta_height_pfp_cancel_representative_1_bounded_entry. fom_beta_height_pfp_cancel_representative_1_bounded_entry + S (fom_value_pfp_cancel_representative_1_bounded) = S ((S (fom_index_pfp_cancel_representative_1_bounded)) * cancel_representative_1_scale)) /\ exists fom_beta_quotient_pfp_cancel_representative_1_bounded_entry. cancel_representative_1_code = fom_beta_quotient_pfp_cancel_representative_1_bounded_entry * S ((S (fom_index_pfp_cancel_representative_1_bounded)) * cancel_representative_1_scale) + (fom_value_pfp_cancel_representative_1_bounded))) /\ (exists fom_gap_pfp_cancel_representative_1_bounded_value_bound. fom_gap_pfp_cancel_representative_1_bounded_value_bound + S (fom_value_pfp_cancel_representative_1_bounded) = p))) /\ ((forall pfrep_power_cancel_representative_1_equivalent pfrep_left_cancel_representative_1_equivalent pfrep_right_cancel_representative_1_equivalent. ((exists pfrep_position_cancel_representative_1_equivalentfirst. ((pfrep_position_cancel_representative_1_equivalentfirst+S (pfrep_power_cancel_representative_1_equivalent)=(M)) /\ ((((exists ff_h_pfp_cancel_representative_1_equivalentfirstentry. ff_h_pfp_cancel_representative_1_equivalentfirstentry + S (pfrep_left_cancel_representative_1_equivalent) = S ((S (pfrep_position_cancel_representative_1_equivalentfirst)) * bc)) /\ exists ff_q_pfp_cancel_representative_1_equivalentfirstentry. bb = ff_q_pfp_cancel_representative_1_equivalentfirstentry * S ((S (pfrep_position_cancel_representative_1_equivalentfirst)) * bc) + (pfrep_left_cancel_representative_1_equivalent)))))) \/ (((exists pfrep_gap_cancel_representative_1_equivalentfirstoutside. pfrep_gap_cancel_representative_1_equivalentfirstoutside+(M)=(pfrep_power_cancel_representative_1_equivalent)) /\ (((pfrep_left_cancel_representative_1_equivalent)=0))))) -> ((exists pfrep_position_cancel_representative_1_equivalentsecond. ((pfrep_position_cancel_representative_1_equivalentsecond+S (pfrep_power_cancel_representative_1_equivalent)=((L)+((M)+((J)+(N))))) /\ ((((exists ff_h_pfp_cancel_representative_1_equivalentsecondentry. ff_h_pfp_cancel_representative_1_equivalentsecondentry + S (pfrep_right_cancel_representative_1_equivalent) = S ((S (pfrep_position_cancel_representative_1_equivalentsecond)) * cancel_representative_1_scale)) /\ exists ff_q_pfp_cancel_representative_1_equivalentsecondentry. cancel_representative_1_code = ff_q_pfp_cancel_representative_1_equivalentsecondentry * S ((S (pfrep_position_cancel_representative_1_equivalentsecond)) * cancel_representative_1_scale) + (pfrep_right_cancel_representative_1_equivalent)))))) \/ (((exists pfrep_gap_cancel_representative_1_equivalentsecondoutside. pfrep_gap_cancel_representative_1_equivalentsecondoutside+((L)+((M)+((J)+(N))))=(pfrep_power_cancel_representative_1_equivalent)) /\ (((pfrep_right_cancel_representative_1_equivalent)=0))))) -> pfrep_left_cancel_representative_1_equivalent=pfrep_right_cancel_representative_1_equivalent))) - 0063
specialize prime_field_polynomial_bounded_representative_at_length_exists (p) - 0064
specialize prime_field_polynomial_bounded_representative_at_length_exists (bb) - 0065
specialize prime_field_polynomial_bounded_representative_at_length_exists (bc) - 0066
specialize prime_field_polynomial_bounded_representative_at_length_exists (M) - 0067
specialize prime_field_polynomial_bounded_representative_at_length_exists ((L)+((M)+((J)+(N)))) - 0068
apply prime_field_polynomial_bounded_representative_at_length_exists - 0069
exact hp - 0070
exact hbbound_right_left - 0071
have length_bound_cancel_representative_1 : exists pfrep_gap_cancel_representative_1_inner. pfrep_gap_cancel_representative_1_inner+(M)=((M)+((J)+(N))) - 0072
specialize le_add_right (M) - 0073
specialize le_add_right ((J)+(N)) - 0074
apply le_add_right - 0075
specialize le_trans (M) - 0076
specialize le_trans ((M)+((J)+(N))) - 0077
specialize le_trans ((L)+((M)+((J)+(N)))) - 0078
apply le_trans - 0079
exact length_bound_cancel_representative_1 - 0080
exists L - 0081
refl - 0082
cases cancel_representative_1 - 0083
cases cancel_representative_1_witness - 0084
cases cancel_representative_1_witness_witness - 0085
have cancel_representative_2 : exists cancel_representative_2_code cancel_representative_2_scale. ((forall fom_index_pfp_cancel_representative_2_bounded. (exists fom_gap_pfp_cancel_representative_2_bounded_index_bound. fom_gap_pfp_cancel_representative_2_bounded_index_bound + S (fom_index_pfp_cancel_representative_2_bounded) = (L)+((M)+((J)+(N)))) -> exists fom_value_pfp_cancel_representative_2_bounded. ((((exists fom_beta_height_pfp_cancel_representative_2_bounded_entry. fom_beta_height_pfp_cancel_representative_2_bounded_entry + S (fom_value_pfp_cancel_representative_2_bounded) = S ((S (fom_index_pfp_cancel_representative_2_bounded)) * cancel_representative_2_scale)) /\ exists fom_beta_quotient_pfp_cancel_representative_2_bounded_entry. cancel_representative_2_code = fom_beta_quotient_pfp_cancel_representative_2_bounded_entry * S ((S (fom_index_pfp_cancel_representative_2_bounded)) * cancel_representative_2_scale) + (fom_value_pfp_cancel_representative_2_bounded))) /\ (exists fom_gap_pfp_cancel_representative_2_bounded_value_bound. fom_gap_pfp_cancel_representative_2_bounded_value_bound + S (fom_value_pfp_cancel_representative_2_bounded) = p))) /\ ((forall pfrep_power_cancel_representative_2_equivalent pfrep_left_cancel_representative_2_equivalent pfrep_right_cancel_representative_2_equivalent. ((exists pfrep_position_cancel_representative_2_equivalentfirst. ((pfrep_position_cancel_representative_2_equivalentfirst+S (pfrep_power_cancel_representative_2_equivalent)=(J)) /\ ((((exists ff_h_pfp_cancel_representative_2_equivalentfirstentry. ff_h_pfp_cancel_representative_2_equivalentfirstentry + S (pfrep_left_cancel_representative_2_equivalent) = S ((S (pfrep_position_cancel_representative_2_equivalentfirst)) * cc)) /\ exists ff_q_pfp_cancel_representative_2_equivalentfirstentry. cb = ff_q_pfp_cancel_representative_2_equivalentfirstentry * S ((S (pfrep_position_cancel_representative_2_equivalentfirst)) * cc) + (pfrep_left_cancel_representative_2_equivalent)))))) \/ (((exists pfrep_gap_cancel_representative_2_equivalentfirstoutside. pfrep_gap_cancel_representative_2_equivalentfirstoutside+(J)=(pfrep_power_cancel_representative_2_equivalent)) /\ (((pfrep_left_cancel_representative_2_equivalent)=0))))) -> ((exists pfrep_position_cancel_representative_2_equivalentsecond. ((pfrep_position_cancel_representative_2_equivalentsecond+S (pfrep_power_cancel_representative_2_equivalent)=((L)+((M)+((J)+(N))))) /\ ((((exists ff_h_pfp_cancel_representative_2_equivalentsecondentry. ff_h_pfp_cancel_representative_2_equivalentsecondentry + S (pfrep_right_cancel_representative_2_equivalent) = S ((S (pfrep_position_cancel_representative_2_equivalentsecond)) * cancel_representative_2_scale)) /\ exists ff_q_pfp_cancel_representative_2_equivalentsecondentry. cancel_representative_2_code = ff_q_pfp_cancel_representative_2_equivalentsecondentry * S ((S (pfrep_position_cancel_representative_2_equivalentsecond)) * cancel_representative_2_scale) + (pfrep_right_cancel_representative_2_equivalent)))))) \/ (((exists pfrep_gap_cancel_representative_2_equivalentsecondoutside. pfrep_gap_cancel_representative_2_equivalentsecondoutside+((L)+((M)+((J)+(N))))=(pfrep_power_cancel_representative_2_equivalent)) /\ (((pfrep_right_cancel_representative_2_equivalent)=0))))) -> pfrep_left_cancel_representative_2_equivalent=pfrep_right_cancel_representative_2_equivalent))) - 0086
specialize prime_field_polynomial_bounded_representative_at_length_exists (p) - 0087
specialize prime_field_polynomial_bounded_representative_at_length_exists (cb) - 0088
specialize prime_field_polynomial_bounded_representative_at_length_exists (cc) - 0089
specialize prime_field_polynomial_bounded_representative_at_length_exists (J) - 0090
specialize prime_field_polynomial_bounded_representative_at_length_exists ((L)+((M)+((J)+(N)))) - 0091
apply prime_field_polynomial_bounded_representative_at_length_exists - 0092
exact hp - 0093
exact hcbound_right_left - 0094
have length_bound_cancel_representative_2 : exists pfrep_gap_cancel_representative_2_inner. pfrep_gap_cancel_representative_2_inner+(J)=((M)+((J)+(N))) - 0095
have length_bound_cancel_representative_2_inner : exists pfrep_gap_cancel_representative_2_inner_inner. pfrep_gap_cancel_representative_2_inner_inner+(J)=((J)+(N)) - 0096
specialize le_add_right (J) - 0097
specialize le_add_right (N) - 0098
apply le_add_right - 0099
specialize le_trans (J) - 0100
specialize le_trans ((J)+(N)) - 0101
specialize le_trans ((M)+((J)+(N))) - 0102
apply le_trans - 0103
exact length_bound_cancel_representative_2_inner - 0104
exists M - 0105
refl - 0106
specialize le_trans (J) - 0107
specialize le_trans ((M)+((J)+(N))) - 0108
specialize le_trans ((L)+((M)+((J)+(N)))) - 0109
apply le_trans - 0110
exact length_bound_cancel_representative_2 - 0111
exists L - 0112
refl - 0113
cases cancel_representative_2 - 0114
cases cancel_representative_2_witness - 0115
cases cancel_representative_2_witness_witness - 0116
have cancel_representative_3 : exists cancel_representative_3_code cancel_representative_3_scale. ((forall fom_index_pfp_cancel_representative_3_bounded. (exists fom_gap_pfp_cancel_representative_3_bounded_index_bound. fom_gap_pfp_cancel_representative_3_bounded_index_bound + S (fom_index_pfp_cancel_representative_3_bounded) = (L)+((M)+((J)+(N)))) -> exists fom_value_pfp_cancel_representative_3_bounded. ((((exists fom_beta_height_pfp_cancel_representative_3_bounded_entry. fom_beta_height_pfp_cancel_representative_3_bounded_entry + S (fom_value_pfp_cancel_representative_3_bounded) = S ((S (fom_index_pfp_cancel_representative_3_bounded)) * cancel_representative_3_scale)) /\ exists fom_beta_quotient_pfp_cancel_representative_3_bounded_entry. cancel_representative_3_code = fom_beta_quotient_pfp_cancel_representative_3_bounded_entry * S ((S (fom_index_pfp_cancel_representative_3_bounded)) * cancel_representative_3_scale) + (fom_value_pfp_cancel_representative_3_bounded))) /\ (exists fom_gap_pfp_cancel_representative_3_bounded_value_bound. fom_gap_pfp_cancel_representative_3_bounded_value_bound + S (fom_value_pfp_cancel_representative_3_bounded) = p))) /\ ((forall pfrep_power_cancel_representative_3_equivalent pfrep_left_cancel_representative_3_equivalent pfrep_right_cancel_representative_3_equivalent. ((exists pfrep_position_cancel_representative_3_equivalentfirst. ((pfrep_position_cancel_representative_3_equivalentfirst+S (pfrep_power_cancel_representative_3_equivalent)=(N)) /\ ((((exists ff_h_pfp_cancel_representative_3_equivalentfirstentry. ff_h_pfp_cancel_representative_3_equivalentfirstentry + S (pfrep_left_cancel_representative_3_equivalent) = S ((S (pfrep_position_cancel_representative_3_equivalentfirst)) * rc)) /\ exists ff_q_pfp_cancel_representative_3_equivalentfirstentry. rb = ff_q_pfp_cancel_representative_3_equivalentfirstentry * S ((S (pfrep_position_cancel_representative_3_equivalentfirst)) * rc) + (pfrep_left_cancel_representative_3_equivalent)))))) \/ (((exists pfrep_gap_cancel_representative_3_equivalentfirstoutside. pfrep_gap_cancel_representative_3_equivalentfirstoutside+(N)=(pfrep_power_cancel_representative_3_equivalent)) /\ (((pfrep_left_cancel_representative_3_equivalent)=0))))) -> ((exists pfrep_position_cancel_representative_3_equivalentsecond. ((pfrep_position_cancel_representative_3_equivalentsecond+S (pfrep_power_cancel_representative_3_equivalent)=((L)+((M)+((J)+(N))))) /\ ((((exists ff_h_pfp_cancel_representative_3_equivalentsecondentry. ff_h_pfp_cancel_representative_3_equivalentsecondentry + S (pfrep_right_cancel_representative_3_equivalent) = S ((S (pfrep_position_cancel_representative_3_equivalentsecond)) * cancel_representative_3_scale)) /\ exists ff_q_pfp_cancel_representative_3_equivalentsecondentry. cancel_representative_3_code = ff_q_pfp_cancel_representative_3_equivalentsecondentry * S ((S (pfrep_position_cancel_representative_3_equivalentsecond)) * cancel_representative_3_scale) + (pfrep_right_cancel_representative_3_equivalent)))))) \/ (((exists pfrep_gap_cancel_representative_3_equivalentsecondoutside. pfrep_gap_cancel_representative_3_equivalentsecondoutside+((L)+((M)+((J)+(N))))=(pfrep_power_cancel_representative_3_equivalent)) /\ (((pfrep_right_cancel_representative_3_equivalent)=0))))) -> pfrep_left_cancel_representative_3_equivalent=pfrep_right_cancel_representative_3_equivalent))) - 0117
specialize prime_field_polynomial_bounded_representative_at_length_exists (p) - 0118
specialize prime_field_polynomial_bounded_representative_at_length_exists (rb) - 0119
specialize prime_field_polynomial_bounded_representative_at_length_exists (rc) - 0120
specialize prime_field_polynomial_bounded_representative_at_length_exists (N) - 0121
specialize prime_field_polynomial_bounded_representative_at_length_exists ((L)+((M)+((J)+(N)))) - 0122
apply prime_field_polynomial_bounded_representative_at_length_exists - 0123
exact hp - 0124
exact hbbound_right_right - 0125
have length_bound_cancel_representative_3 : exists pfrep_gap_cancel_representative_3_inner. pfrep_gap_cancel_representative_3_inner+(N)=((M)+((J)+(N))) - 0126
have length_bound_cancel_representative_3_inner : exists pfrep_gap_cancel_representative_3_inner_inner. pfrep_gap_cancel_representative_3_inner_inner+(N)=((J)+(N)) - 0127
have length_bound_cancel_representative_3_inner_inner : exists pfrep_gap_cancel_representative_3_inner_inner_inner. pfrep_gap_cancel_representative_3_inner_inner_inner+(N)=(N) - 0128
specialize le_refl (N) - 0129
apply le_refl - 0130
specialize le_trans (N) - 0131
specialize le_trans (N) - 0132
specialize le_trans ((J)+(N)) - 0133
apply le_trans - 0134
exact length_bound_cancel_representative_3_inner_inner - 0135
exists J - 0136
refl - 0137
specialize le_trans (N) - 0138
specialize le_trans ((J)+(N)) - 0139
specialize le_trans ((M)+((J)+(N))) - 0140
apply le_trans - 0141
exact length_bound_cancel_representative_3_inner - 0142
exists M - 0143
refl - 0144
specialize le_trans (N) - 0145
specialize le_trans ((M)+((J)+(N))) - 0146
specialize le_trans ((L)+((M)+((J)+(N)))) - 0147
apply le_trans - 0148
exact length_bound_cancel_representative_3 - 0149
exists L - 0150
refl - 0151
cases cancel_representative_3 - 0152
cases cancel_representative_3_witness - 0153
cases cancel_representative_3_witness_witness - 0154
have hfirst : forall pfp_index_hfirst_operation. (exists pfa_gap_hfirst_operationindex. pfa_gap_hfirst_operationindex + S (pfp_index_hfirst_operation) = ((L)+((M)+((J)+(N))))) -> exists pfp_left_hfirst_operation pfp_right_hfirst_operation pfp_value_hfirst_operation. ((((exists ff_h_pfp_hfirst_operationleft. ff_h_pfp_hfirst_operationleft + S (pfp_left_hfirst_operation) = S ((S (pfp_index_hfirst_operation)) * x1)) /\ exists ff_q_pfp_hfirst_operationleft. x = ff_q_pfp_hfirst_operationleft * S ((S (pfp_index_hfirst_operation)) * x1) + (pfp_left_hfirst_operation))) /\ (((((exists ff_h_pfp_hfirst_operationright. ff_h_pfp_hfirst_operationright + S (pfp_right_hfirst_operation) = S ((S (pfp_index_hfirst_operation)) * x3)) /\ exists ff_q_pfp_hfirst_operationright. x2 = ff_q_pfp_hfirst_operationright * S ((S (pfp_index_hfirst_operation)) * x3) + (pfp_right_hfirst_operation))) /\ (((((exists ff_h_pfp_hfirst_operationtarget. ff_h_pfp_hfirst_operationtarget + S (pfp_value_hfirst_operation) = S ((S (pfp_index_hfirst_operation)) * x7)) /\ exists ff_q_pfp_hfirst_operationtarget. x6 = ff_q_pfp_hfirst_operationtarget * S ((S (pfp_index_hfirst_operation)) * x7) + (pfp_value_hfirst_operation))) /\ ((((exists pfa_gap_hfirst_operationoperationleft. pfa_gap_hfirst_operationoperationleft + S (pfp_left_hfirst_operation) = (p)) /\ (((exists pfa_gap_hfirst_operationoperationright. pfa_gap_hfirst_operationoperationright + S (pfp_right_hfirst_operation) = (p)) /\ ((((exists pfa_gap_hfirst_operationoperationresultbound. pfa_gap_hfirst_operationoperationresultbound + S (pfp_value_hfirst_operation) = (p)) /\ ((exists pfa_offset_left_hfirst_operationoperationresultcongruence pfa_offset_right_hfirst_operationoperationresultcongruence. ((pfp_left_hfirst_operation) + (pfp_right_hfirst_operation)) + (p) * pfa_offset_left_hfirst_operationoperationresultcongruence = (pfp_value_hfirst_operation) + (p) * pfa_offset_right_hfirst_operationoperationresultcongruence))))))))))))))) - 0155
specialize prime_field_polynomial_aligned_add_realize (p) - 0156
specialize prime_field_polynomial_aligned_add_realize (ab) - 0157
specialize prime_field_polynomial_aligned_add_realize (ac) - 0158
specialize prime_field_polynomial_aligned_add_realize (L) - 0159
specialize prime_field_polynomial_aligned_add_realize (bb) - 0160
specialize prime_field_polynomial_aligned_add_realize (bc) - 0161
specialize prime_field_polynomial_aligned_add_realize (M) - 0162
specialize prime_field_polynomial_aligned_add_realize (rb) - 0163
specialize prime_field_polynomial_aligned_add_realize (rc) - 0164
specialize prime_field_polynomial_aligned_add_realize (N) - 0165
specialize prime_field_polynomial_aligned_add_realize (x) - 0166
specialize prime_field_polynomial_aligned_add_realize (x1) - 0167
specialize prime_field_polynomial_aligned_add_realize (x2) - 0168
specialize prime_field_polynomial_aligned_add_realize (x3) - 0169
specialize prime_field_polynomial_aligned_add_realize (x6) - 0170
specialize prime_field_polynomial_aligned_add_realize (x7) - 0171
specialize prime_field_polynomial_aligned_add_realize ((L)+((M)+((J)+(N)))) - 0172
apply prime_field_polynomial_aligned_add_realize - 0173
exact hp - 0174
exact hb - 0175
exact cancel_representative_0_witness_witness_left - 0176
exact cancel_representative_1_witness_witness_left - 0177
exact cancel_representative_3_witness_witness_left - 0178
split - 0179
exact cancel_representative_0_witness_witness_right - 0180
exact cancel_representative_1_witness_witness_right - 0181
exact cancel_representative_3_witness_witness_right - 0182
have hsecond : forall pfp_index_hsecond_operation. (exists pfa_gap_hsecond_operationindex. pfa_gap_hsecond_operationindex + S (pfp_index_hsecond_operation) = ((L)+((M)+((J)+(N))))) -> exists pfp_left_hsecond_operation pfp_right_hsecond_operation pfp_value_hsecond_operation. ((((exists ff_h_pfp_hsecond_operationleft. ff_h_pfp_hsecond_operationleft + S (pfp_left_hsecond_operation) = S ((S (pfp_index_hsecond_operation)) * x1)) /\ exists ff_q_pfp_hsecond_operationleft. x = ff_q_pfp_hsecond_operationleft * S ((S (pfp_index_hsecond_operation)) * x1) + (pfp_left_hsecond_operation))) /\ (((((exists ff_h_pfp_hsecond_operationright. ff_h_pfp_hsecond_operationright + S (pfp_right_hsecond_operation) = S ((S (pfp_index_hsecond_operation)) * x5)) /\ exists ff_q_pfp_hsecond_operationright. x4 = ff_q_pfp_hsecond_operationright * S ((S (pfp_index_hsecond_operation)) * x5) + (pfp_right_hsecond_operation))) /\ (((((exists ff_h_pfp_hsecond_operationtarget. ff_h_pfp_hsecond_operationtarget + S (pfp_value_hsecond_operation) = S ((S (pfp_index_hsecond_operation)) * x7)) /\ exists ff_q_pfp_hsecond_operationtarget. x6 = ff_q_pfp_hsecond_operationtarget * S ((S (pfp_index_hsecond_operation)) * x7) + (pfp_value_hsecond_operation))) /\ ((((exists pfa_gap_hsecond_operationoperationleft. pfa_gap_hsecond_operationoperationleft + S (pfp_left_hsecond_operation) = (p)) /\ (((exists pfa_gap_hsecond_operationoperationright. pfa_gap_hsecond_operationoperationright + S (pfp_right_hsecond_operation) = (p)) /\ ((((exists pfa_gap_hsecond_operationoperationresultbound. pfa_gap_hsecond_operationoperationresultbound + S (pfp_value_hsecond_operation) = (p)) /\ ((exists pfa_offset_left_hsecond_operationoperationresultcongruence pfa_offset_right_hsecond_operationoperationresultcongruence. ((pfp_left_hsecond_operation) + (pfp_right_hsecond_operation)) + (p) * pfa_offset_left_hsecond_operationoperationresultcongruence = (pfp_value_hsecond_operation) + (p) * pfa_offset_right_hsecond_operationoperationresultcongruence))))))))))))))) - 0183
specialize prime_field_polynomial_aligned_add_realize (p) - 0184
specialize prime_field_polynomial_aligned_add_realize (ab) - 0185
specialize prime_field_polynomial_aligned_add_realize (ac) - 0186
specialize prime_field_polynomial_aligned_add_realize (L) - 0187
specialize prime_field_polynomial_aligned_add_realize (cb) - 0188
specialize prime_field_polynomial_aligned_add_realize (cc) - 0189
specialize prime_field_polynomial_aligned_add_realize (J) - 0190
specialize prime_field_polynomial_aligned_add_realize (rb) - 0191
specialize prime_field_polynomial_aligned_add_realize (rc) - 0192
specialize prime_field_polynomial_aligned_add_realize (N) - 0193
specialize prime_field_polynomial_aligned_add_realize (x) - 0194
specialize prime_field_polynomial_aligned_add_realize (x1) - 0195
specialize prime_field_polynomial_aligned_add_realize (x4) - 0196
specialize prime_field_polynomial_aligned_add_realize (x5) - 0197
specialize prime_field_polynomial_aligned_add_realize (x6) - 0198
specialize prime_field_polynomial_aligned_add_realize (x7) - 0199
specialize prime_field_polynomial_aligned_add_realize ((L)+((M)+((J)+(N)))) - 0200
apply prime_field_polynomial_aligned_add_realize - 0201
exact hp - 0202
exact hc - 0203
exact cancel_representative_0_witness_witness_left - 0204
exact cancel_representative_2_witness_witness_left - 0205
exact cancel_representative_3_witness_witness_left - 0206
split - 0207
exact cancel_representative_0_witness_witness_right - 0208
exact cancel_representative_2_witness_witness_right - 0209
exact cancel_representative_3_witness_witness_right - 0210
have heq : forall mdr_i_pfp_cancel_actual_outputs mdr_a_pfp_cancel_actual_outputs. (exists mdr_gap_pfp_cancel_actual_outputsb. mdr_gap_pfp_cancel_actual_outputsb + S (mdr_i_pfp_cancel_actual_outputs) = ((L)+((M)+((J)+(N))))) -> (((exists ff_h_mdr_pfp_cancel_actual_outputso. ff_h_mdr_pfp_cancel_actual_outputso + S (mdr_a_pfp_cancel_actual_outputs) = S ((S (mdr_i_pfp_cancel_actual_outputs)) * x3)) /\ exists ff_q_mdr_pfp_cancel_actual_outputso. x2 = ff_q_mdr_pfp_cancel_actual_outputso * S ((S (mdr_i_pfp_cancel_actual_outputs)) * x3) + (mdr_a_pfp_cancel_actual_outputs))) -> (((exists ff_h_mdr_pfp_cancel_actual_outputsn. ff_h_mdr_pfp_cancel_actual_outputsn + S (mdr_a_pfp_cancel_actual_outputs) = S ((S (mdr_i_pfp_cancel_actual_outputs)) * x5)) /\ exists ff_q_mdr_pfp_cancel_actual_outputsn. x4 = ff_q_mdr_pfp_cancel_actual_outputsn * S ((S (mdr_i_pfp_cancel_actual_outputs)) * x5) + (mdr_a_pfp_cancel_actual_outputs))) - 0211
specialize prime_field_polynomial_subtract_functional (p) - 0212
specialize prime_field_polynomial_subtract_functional (x6) - 0213
specialize prime_field_polynomial_subtract_functional (x7) - 0214
specialize prime_field_polynomial_subtract_functional (x) - 0215
specialize prime_field_polynomial_subtract_functional (x1) - 0216
specialize prime_field_polynomial_subtract_functional (x2) - 0217
specialize prime_field_polynomial_subtract_functional (x3) - 0218
specialize prime_field_polynomial_subtract_functional (x4) - 0219
specialize prime_field_polynomial_subtract_functional (x5) - 0220
specialize prime_field_polynomial_subtract_functional ((L)+((M)+((J)+(N)))) - 0221
apply prime_field_polynomial_subtract_functional - 0222
specialize prime_field_polynomial_subtract_from_add (p) - 0223
specialize prime_field_polynomial_subtract_from_add (x6) - 0224
specialize prime_field_polynomial_subtract_from_add (x7) - 0225
specialize prime_field_polynomial_subtract_from_add (x) - 0226
specialize prime_field_polynomial_subtract_from_add (x1) - 0227
specialize prime_field_polynomial_subtract_from_add (x2) - 0228
specialize prime_field_polynomial_subtract_from_add (x3) - 0229
specialize prime_field_polynomial_subtract_from_add ((L)+((M)+((J)+(N)))) - 0230
apply prime_field_polynomial_subtract_from_add - 0231
exact hfirst - 0232
specialize prime_field_polynomial_subtract_from_add (p) - 0233
specialize prime_field_polynomial_subtract_from_add (x6) - 0234
specialize prime_field_polynomial_subtract_from_add (x7) - 0235
specialize prime_field_polynomial_subtract_from_add (x) - 0236
specialize prime_field_polynomial_subtract_from_add (x1) - 0237
specialize prime_field_polynomial_subtract_from_add (x4) - 0238
specialize prime_field_polynomial_subtract_from_add (x5) - 0239
specialize prime_field_polynomial_subtract_from_add ((L)+((M)+((J)+(N)))) - 0240
apply prime_field_polynomial_subtract_from_add - 0241
exact hsecond - 0242
have cancel_middle : forall pfrep_power_cancel_middle_result pfrep_left_cancel_middle_result pfrep_right_cancel_middle_result. ((exists pfrep_position_cancel_middle_resultfirst. ((pfrep_position_cancel_middle_resultfirst+S (pfrep_power_cancel_middle_result)=(M)) /\ ((((exists ff_h_pfp_cancel_middle_resultfirstentry. ff_h_pfp_cancel_middle_resultfirstentry + S (pfrep_left_cancel_middle_result) = S ((S (pfrep_position_cancel_middle_resultfirst)) * bc)) /\ exists ff_q_pfp_cancel_middle_resultfirstentry. bb = ff_q_pfp_cancel_middle_resultfirstentry * S ((S (pfrep_position_cancel_middle_resultfirst)) * bc) + (pfrep_left_cancel_middle_result)))))) \/ (((exists pfrep_gap_cancel_middle_resultfirstoutside. pfrep_gap_cancel_middle_resultfirstoutside+(M)=(pfrep_power_cancel_middle_result)) /\ (((pfrep_left_cancel_middle_result)=0))))) -> ((exists pfrep_position_cancel_middle_resultsecond. ((pfrep_position_cancel_middle_resultsecond+S (pfrep_power_cancel_middle_result)=((L)+((M)+((J)+(N))))) /\ ((((exists ff_h_pfp_cancel_middle_resultsecondentry. ff_h_pfp_cancel_middle_resultsecondentry + S (pfrep_right_cancel_middle_result) = S ((S (pfrep_position_cancel_middle_resultsecond)) * x5)) /\ exists ff_q_pfp_cancel_middle_resultsecondentry. x4 = ff_q_pfp_cancel_middle_resultsecondentry * S ((S (pfrep_position_cancel_middle_resultsecond)) * x5) + (pfrep_right_cancel_middle_result)))))) \/ (((exists pfrep_gap_cancel_middle_resultsecondoutside. pfrep_gap_cancel_middle_resultsecondoutside+((L)+((M)+((J)+(N))))=(pfrep_power_cancel_middle_result)) /\ (((pfrep_right_cancel_middle_result)=0))))) -> pfrep_left_cancel_middle_result=pfrep_right_cancel_middle_result - 0243
specialize prime_field_polynomial_equivalent_transitive (bb) - 0244
specialize prime_field_polynomial_equivalent_transitive (bc) - 0245
specialize prime_field_polynomial_equivalent_transitive (M) - 0246
specialize prime_field_polynomial_equivalent_transitive (x2) - 0247
specialize prime_field_polynomial_equivalent_transitive (x3) - 0248
specialize prime_field_polynomial_equivalent_transitive ((L)+((M)+((J)+(N)))) - 0249
specialize prime_field_polynomial_equivalent_transitive (x4) - 0250
specialize prime_field_polynomial_equivalent_transitive (x5) - 0251
specialize prime_field_polynomial_equivalent_transitive ((L)+((M)+((J)+(N)))) - 0252
apply prime_field_polynomial_equivalent_transitive - 0253
exact cancel_representative_1_witness_witness_right - 0254
specialize prime_field_polynomial_equal_implies_equivalent (x2) - 0255
specialize prime_field_polynomial_equal_implies_equivalent (x3) - 0256
specialize prime_field_polynomial_equal_implies_equivalent (x4) - 0257
specialize prime_field_polynomial_equal_implies_equivalent (x5) - 0258
specialize prime_field_polynomial_equal_implies_equivalent ((L)+((M)+((J)+(N)))) - 0259
apply prime_field_polynomial_equal_implies_equivalent - 0260
exact heq - 0261
specialize prime_field_polynomial_equivalent_transitive (bb) - 0262
specialize prime_field_polynomial_equivalent_transitive (bc) - 0263
specialize prime_field_polynomial_equivalent_transitive (M) - 0264
specialize prime_field_polynomial_equivalent_transitive (x4) - 0265
specialize prime_field_polynomial_equivalent_transitive (x5) - 0266
specialize prime_field_polynomial_equivalent_transitive ((L)+((M)+((J)+(N)))) - 0267
specialize prime_field_polynomial_equivalent_transitive (cb) - 0268
specialize prime_field_polynomial_equivalent_transitive (cc) - 0269
specialize prime_field_polynomial_equivalent_transitive (J) - 0270
apply prime_field_polynomial_equivalent_transitive - 0271
exact cancel_middle - 0272
specialize prime_field_polynomial_equivalent_symmetric (cb) - 0273
specialize prime_field_polynomial_equivalent_symmetric (cc) - 0274
specialize prime_field_polynomial_equivalent_symmetric (J) - 0275
specialize prime_field_polynomial_equivalent_symmetric (x4) - 0276
specialize prime_field_polynomial_equivalent_symmetric (x5) - 0277
specialize prime_field_polynomial_equivalent_symmetric ((L)+((M)+((J)+(N)))) - 0278
apply prime_field_polynomial_equivalent_symmetric - 0279
exact cancel_representative_2_witness_witness_right