PG0047

prime_field_polynomial_aligned_add_associative

Both actual bracketings of three independently sized polynomials give formally equivalent outputs; all seven comparison prefixes and all four coefficient operations are genuinely constructed.

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

Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.

All products and sums use actual beta-coded coefficients; equality is formal coefficient equivalence, not equality of evaluations or raw codes. The zero gcd is included. Uniqueness is up to formal equivalence, not unique Bézout coefficients. This proves the polynomial gcd component, not G091 irreducible-polynomial existence or arbitrary prime-power-field construction.

Exact theorem in conservative defined notation

∀ p. ∀ ab. ∀ ac. ∀ La. ∀ bb. ∀ bc. ∀ Lb. ∀ cb. ∀ cc. ∀ Lc. ∀ ub. ∀ uc. ∀ Lu. ∀ vb. ∀ vc. ∀ Lv. ∀ rb. ∀ rc. ∀ Lr. ∀ sb. ∀ sc. ∀ Ls. Prime(p)FpPolynomialAlignedAdd(p,ab,ac,La,bb,bc,Lb,ub,uc,Lu)FpPolynomialAlignedAdd(p,ub,uc,Lu,cb,cc,Lc,rb,rc,Lr)FpPolynomialAlignedAdd(p,bb,bc,Lb,cb,cc,Lc,vb,vc,Lv)FpPolynomialAlignedAdd(p,ab,ac,La,vb,vc,Lv,sb,sc,Ls)PolynomialEquivalent(rb,rc,Lr,sb,sc,Ls)

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

Original expanded first-order statement
forall p ab ac La bb bc Lb cb cc Lc ub uc Lu vb vc Lv rb rc Lr sb sc Ls. (~((p) = 1) /\ forall pfa_factor_left_associative_prime pfa_factor_right_associative_prime. (p) = pfa_factor_left_associative_prime * pfa_factor_right_associative_prime -> pfa_factor_left_associative_prime = 1 \/ pfa_factor_right_associative_prime = 1) -> (((forall fom_index_pfp_associative_0_left_bounded. (exists fom_gap_pfp_associative_0_left_bounded_index_bound. fom_gap_pfp_associative_0_left_bounded_index_bound + S (fom_index_pfp_associative_0_left_bounded) = La) -> exists fom_value_pfp_associative_0_left_bounded. ((((exists fom_beta_height_pfp_associative_0_left_bounded_entry. fom_beta_height_pfp_associative_0_left_bounded_entry + S (fom_value_pfp_associative_0_left_bounded) = S ((S (fom_index_pfp_associative_0_left_bounded)) * ac)) /\ exists fom_beta_quotient_pfp_associative_0_left_bounded_entry. ab = fom_beta_quotient_pfp_associative_0_left_bounded_entry * S ((S (fom_index_pfp_associative_0_left_bounded)) * ac) + (fom_value_pfp_associative_0_left_bounded))) /\ (exists fom_gap_pfp_associative_0_left_bounded_value_bound. fom_gap_pfp_associative_0_left_bounded_value_bound + S (fom_value_pfp_associative_0_left_bounded) = p))) /\ (((forall fom_index_pfp_associative_0_right_bounded. (exists fom_gap_pfp_associative_0_right_bounded_index_bound. fom_gap_pfp_associative_0_right_bounded_index_bound + S (fom_index_pfp_associative_0_right_bounded) = Lb) -> exists fom_value_pfp_associative_0_right_bounded. ((((exists fom_beta_height_pfp_associative_0_right_bounded_entry. fom_beta_height_pfp_associative_0_right_bounded_entry + S (fom_value_pfp_associative_0_right_bounded) = S ((S (fom_index_pfp_associative_0_right_bounded)) * bc)) /\ exists fom_beta_quotient_pfp_associative_0_right_bounded_entry. bb = fom_beta_quotient_pfp_associative_0_right_bounded_entry * S ((S (fom_index_pfp_associative_0_right_bounded)) * bc) + (fom_value_pfp_associative_0_right_bounded))) /\ (exists fom_gap_pfp_associative_0_right_bounded_value_bound. fom_gap_pfp_associative_0_right_bounded_value_bound + S (fom_value_pfp_associative_0_right_bounded) = p))) /\ (((forall fom_index_pfp_associative_0_result_bounded. (exists fom_gap_pfp_associative_0_result_bounded_index_bound. fom_gap_pfp_associative_0_result_bounded_index_bound + S (fom_index_pfp_associative_0_result_bounded) = Lu) -> exists fom_value_pfp_associative_0_result_bounded. ((((exists fom_beta_height_pfp_associative_0_result_bounded_entry. fom_beta_height_pfp_associative_0_result_bounded_entry + S (fom_value_pfp_associative_0_result_bounded) = S ((S (fom_index_pfp_associative_0_result_bounded)) * uc)) /\ exists fom_beta_quotient_pfp_associative_0_result_bounded_entry. ub = fom_beta_quotient_pfp_associative_0_result_bounded_entry * S ((S (fom_index_pfp_associative_0_result_bounded)) * uc) + (fom_value_pfp_associative_0_result_bounded))) /\ (exists fom_gap_pfp_associative_0_result_bounded_value_bound. fom_gap_pfp_associative_0_result_bounded_value_bound + S (fom_value_pfp_associative_0_result_bounded) = p))) /\ ((exists pfaa_left_b_associative_0 pfaa_left_c_associative_0 pfaa_right_b_associative_0 pfaa_right_c_associative_0 pfaa_sum_b_associative_0 pfaa_sum_c_associative_0 pfaa_length_associative_0. ((((forall pfrep_power_associative_0_witness_common_left pfrep_left_associative_0_witness_common_left pfrep_right_associative_0_witness_common_left. ((exists pfrep_position_associative_0_witness_common_leftfirst. ((pfrep_position_associative_0_witness_common_leftfirst+S (pfrep_power_associative_0_witness_common_left)=(La)) /\ ((((exists ff_h_pfp_associative_0_witness_common_leftfirstentry. ff_h_pfp_associative_0_witness_common_leftfirstentry + S (pfrep_left_associative_0_witness_common_left) = S ((S (pfrep_position_associative_0_witness_common_leftfirst)) * ac)) /\ exists ff_q_pfp_associative_0_witness_common_leftfirstentry. ab = ff_q_pfp_associative_0_witness_common_leftfirstentry * S ((S (pfrep_position_associative_0_witness_common_leftfirst)) * ac) + (pfrep_left_associative_0_witness_common_left)))))) \/ (((exists pfrep_gap_associative_0_witness_common_leftfirstoutside. pfrep_gap_associative_0_witness_common_leftfirstoutside+(La)=(pfrep_power_associative_0_witness_common_left)) /\ (((pfrep_left_associative_0_witness_common_left)=0))))) -> ((exists pfrep_position_associative_0_witness_common_leftsecond. ((pfrep_position_associative_0_witness_common_leftsecond+S (pfrep_power_associative_0_witness_common_left)=(pfaa_length_associative_0)) /\ ((((exists ff_h_pfp_associative_0_witness_common_leftsecondentry. ff_h_pfp_associative_0_witness_common_leftsecondentry + S (pfrep_right_associative_0_witness_common_left) = S ((S (pfrep_position_associative_0_witness_common_leftsecond)) * pfaa_left_c_associative_0)) /\ exists ff_q_pfp_associative_0_witness_common_leftsecondentry. pfaa_left_b_associative_0 = ff_q_pfp_associative_0_witness_common_leftsecondentry * S ((S (pfrep_position_associative_0_witness_common_leftsecond)) * pfaa_left_c_associative_0) + (pfrep_right_associative_0_witness_common_left)))))) \/ (((exists pfrep_gap_associative_0_witness_common_leftsecondoutside. pfrep_gap_associative_0_witness_common_leftsecondoutside+(pfaa_length_associative_0)=(pfrep_power_associative_0_witness_common_left)) /\ (((pfrep_right_associative_0_witness_common_left)=0))))) -> pfrep_left_associative_0_witness_common_left=pfrep_right_associative_0_witness_common_left) /\ ((forall pfrep_power_associative_0_witness_common_right pfrep_left_associative_0_witness_common_right pfrep_right_associative_0_witness_common_right. ((exists pfrep_position_associative_0_witness_common_rightfirst. ((pfrep_position_associative_0_witness_common_rightfirst+S (pfrep_power_associative_0_witness_common_right)=(Lb)) /\ ((((exists ff_h_pfp_associative_0_witness_common_rightfirstentry. ff_h_pfp_associative_0_witness_common_rightfirstentry + S (pfrep_left_associative_0_witness_common_right) = S ((S (pfrep_position_associative_0_witness_common_rightfirst)) * bc)) /\ exists ff_q_pfp_associative_0_witness_common_rightfirstentry. bb = ff_q_pfp_associative_0_witness_common_rightfirstentry * S ((S (pfrep_position_associative_0_witness_common_rightfirst)) * bc) + (pfrep_left_associative_0_witness_common_right)))))) \/ (((exists pfrep_gap_associative_0_witness_common_rightfirstoutside. pfrep_gap_associative_0_witness_common_rightfirstoutside+(Lb)=(pfrep_power_associative_0_witness_common_right)) /\ (((pfrep_left_associative_0_witness_common_right)=0))))) -> ((exists pfrep_position_associative_0_witness_common_rightsecond. ((pfrep_position_associative_0_witness_common_rightsecond+S (pfrep_power_associative_0_witness_common_right)=(pfaa_length_associative_0)) /\ ((((exists ff_h_pfp_associative_0_witness_common_rightsecondentry. ff_h_pfp_associative_0_witness_common_rightsecondentry + S (pfrep_right_associative_0_witness_common_right) = S ((S (pfrep_position_associative_0_witness_common_rightsecond)) * pfaa_right_c_associative_0)) /\ exists ff_q_pfp_associative_0_witness_common_rightsecondentry. pfaa_right_b_associative_0 = ff_q_pfp_associative_0_witness_common_rightsecondentry * S ((S (pfrep_position_associative_0_witness_common_rightsecond)) * pfaa_right_c_associative_0) + (pfrep_right_associative_0_witness_common_right)))))) \/ (((exists pfrep_gap_associative_0_witness_common_rightsecondoutside. pfrep_gap_associative_0_witness_common_rightsecondoutside+(pfaa_length_associative_0)=(pfrep_power_associative_0_witness_common_right)) /\ (((pfrep_right_associative_0_witness_common_right)=0))))) -> pfrep_left_associative_0_witness_common_right=pfrep_right_associative_0_witness_common_right)))) /\ (((forall pfp_index_associative_0_witness_operation. (exists pfa_gap_associative_0_witness_operationindex. pfa_gap_associative_0_witness_operationindex + S (pfp_index_associative_0_witness_operation) = (pfaa_length_associative_0)) -> exists pfp_left_associative_0_witness_operation pfp_right_associative_0_witness_operation pfp_value_associative_0_witness_operation. ((((exists ff_h_pfp_associative_0_witness_operationleft. ff_h_pfp_associative_0_witness_operationleft + S (pfp_left_associative_0_witness_operation) = S ((S (pfp_index_associative_0_witness_operation)) * pfaa_left_c_associative_0)) /\ exists ff_q_pfp_associative_0_witness_operationleft. pfaa_left_b_associative_0 = ff_q_pfp_associative_0_witness_operationleft * S ((S (pfp_index_associative_0_witness_operation)) * pfaa_left_c_associative_0) + (pfp_left_associative_0_witness_operation))) /\ (((((exists ff_h_pfp_associative_0_witness_operationright. ff_h_pfp_associative_0_witness_operationright + S (pfp_right_associative_0_witness_operation) = S ((S (pfp_index_associative_0_witness_operation)) * pfaa_right_c_associative_0)) /\ exists ff_q_pfp_associative_0_witness_operationright. pfaa_right_b_associative_0 = ff_q_pfp_associative_0_witness_operationright * S ((S (pfp_index_associative_0_witness_operation)) * pfaa_right_c_associative_0) + (pfp_right_associative_0_witness_operation))) /\ (((((exists ff_h_pfp_associative_0_witness_operationtarget. ff_h_pfp_associative_0_witness_operationtarget + S (pfp_value_associative_0_witness_operation) = S ((S (pfp_index_associative_0_witness_operation)) * pfaa_sum_c_associative_0)) /\ exists ff_q_pfp_associative_0_witness_operationtarget. pfaa_sum_b_associative_0 = ff_q_pfp_associative_0_witness_operationtarget * S ((S (pfp_index_associative_0_witness_operation)) * pfaa_sum_c_associative_0) + (pfp_value_associative_0_witness_operation))) /\ ((((exists pfa_gap_associative_0_witness_operationoperationleft. pfa_gap_associative_0_witness_operationoperationleft + S (pfp_left_associative_0_witness_operation) = (p)) /\ (((exists pfa_gap_associative_0_witness_operationoperationright. pfa_gap_associative_0_witness_operationoperationright + S (pfp_right_associative_0_witness_operation) = (p)) /\ ((((exists pfa_gap_associative_0_witness_operationoperationresultbound. pfa_gap_associative_0_witness_operationoperationresultbound + S (pfp_value_associative_0_witness_operation) = (p)) /\ ((exists pfa_offset_left_associative_0_witness_operationoperationresultcongruence pfa_offset_right_associative_0_witness_operationoperationresultcongruence. ((pfp_left_associative_0_witness_operation) + (pfp_right_associative_0_witness_operation)) + (p) * pfa_offset_left_associative_0_witness_operationoperationresultcongruence = (pfp_value_associative_0_witness_operation) + (p) * pfa_offset_right_associative_0_witness_operationoperationresultcongruence)))))))))))))))) /\ ((forall pfrep_power_associative_0_witness_output pfrep_left_associative_0_witness_output pfrep_right_associative_0_witness_output. ((exists pfrep_position_associative_0_witness_outputfirst. ((pfrep_position_associative_0_witness_outputfirst+S (pfrep_power_associative_0_witness_output)=(pfaa_length_associative_0)) /\ ((((exists ff_h_pfp_associative_0_witness_outputfirstentry. ff_h_pfp_associative_0_witness_outputfirstentry + S (pfrep_left_associative_0_witness_output) = S ((S (pfrep_position_associative_0_witness_outputfirst)) * pfaa_sum_c_associative_0)) /\ exists ff_q_pfp_associative_0_witness_outputfirstentry. pfaa_sum_b_associative_0 = ff_q_pfp_associative_0_witness_outputfirstentry * S ((S (pfrep_position_associative_0_witness_outputfirst)) * pfaa_sum_c_associative_0) + (pfrep_left_associative_0_witness_output)))))) \/ (((exists pfrep_gap_associative_0_witness_outputfirstoutside. pfrep_gap_associative_0_witness_outputfirstoutside+(pfaa_length_associative_0)=(pfrep_power_associative_0_witness_output)) /\ (((pfrep_left_associative_0_witness_output)=0))))) -> ((exists pfrep_position_associative_0_witness_outputsecond. ((pfrep_position_associative_0_witness_outputsecond+S (pfrep_power_associative_0_witness_output)=(Lu)) /\ ((((exists ff_h_pfp_associative_0_witness_outputsecondentry. ff_h_pfp_associative_0_witness_outputsecondentry + S (pfrep_right_associative_0_witness_output) = S ((S (pfrep_position_associative_0_witness_outputsecond)) * uc)) /\ exists ff_q_pfp_associative_0_witness_outputsecondentry. ub = ff_q_pfp_associative_0_witness_outputsecondentry * S ((S (pfrep_position_associative_0_witness_outputsecond)) * uc) + (pfrep_right_associative_0_witness_output)))))) \/ (((exists pfrep_gap_associative_0_witness_outputsecondoutside. pfrep_gap_associative_0_witness_outputsecondoutside+(Lu)=(pfrep_power_associative_0_witness_output)) /\ (((pfrep_right_associative_0_witness_output)=0))))) -> pfrep_left_associative_0_witness_output=pfrep_right_associative_0_witness_output))))))))))))) -> (((forall fom_index_pfp_associative_1_left_bounded. (exists fom_gap_pfp_associative_1_left_bounded_index_bound. fom_gap_pfp_associative_1_left_bounded_index_bound + S (fom_index_pfp_associative_1_left_bounded) = Lu) -> exists fom_value_pfp_associative_1_left_bounded. ((((exists fom_beta_height_pfp_associative_1_left_bounded_entry. fom_beta_height_pfp_associative_1_left_bounded_entry + S (fom_value_pfp_associative_1_left_bounded) = S ((S (fom_index_pfp_associative_1_left_bounded)) * uc)) /\ exists fom_beta_quotient_pfp_associative_1_left_bounded_entry. ub = fom_beta_quotient_pfp_associative_1_left_bounded_entry * S ((S (fom_index_pfp_associative_1_left_bounded)) * uc) + (fom_value_pfp_associative_1_left_bounded))) /\ (exists fom_gap_pfp_associative_1_left_bounded_value_bound. fom_gap_pfp_associative_1_left_bounded_value_bound + S (fom_value_pfp_associative_1_left_bounded) = p))) /\ (((forall fom_index_pfp_associative_1_right_bounded. (exists fom_gap_pfp_associative_1_right_bounded_index_bound. fom_gap_pfp_associative_1_right_bounded_index_bound + S (fom_index_pfp_associative_1_right_bounded) = Lc) -> exists fom_value_pfp_associative_1_right_bounded. ((((exists fom_beta_height_pfp_associative_1_right_bounded_entry. fom_beta_height_pfp_associative_1_right_bounded_entry + S (fom_value_pfp_associative_1_right_bounded) = S ((S (fom_index_pfp_associative_1_right_bounded)) * cc)) /\ exists fom_beta_quotient_pfp_associative_1_right_bounded_entry. cb = fom_beta_quotient_pfp_associative_1_right_bounded_entry * S ((S (fom_index_pfp_associative_1_right_bounded)) * cc) + (fom_value_pfp_associative_1_right_bounded))) /\ (exists fom_gap_pfp_associative_1_right_bounded_value_bound. fom_gap_pfp_associative_1_right_bounded_value_bound + S (fom_value_pfp_associative_1_right_bounded) = p))) /\ (((forall fom_index_pfp_associative_1_result_bounded. (exists fom_gap_pfp_associative_1_result_bounded_index_bound. fom_gap_pfp_associative_1_result_bounded_index_bound + S (fom_index_pfp_associative_1_result_bounded) = Lr) -> exists fom_value_pfp_associative_1_result_bounded. ((((exists fom_beta_height_pfp_associative_1_result_bounded_entry. fom_beta_height_pfp_associative_1_result_bounded_entry + S (fom_value_pfp_associative_1_result_bounded) = S ((S (fom_index_pfp_associative_1_result_bounded)) * rc)) /\ exists fom_beta_quotient_pfp_associative_1_result_bounded_entry. rb = fom_beta_quotient_pfp_associative_1_result_bounded_entry * S ((S (fom_index_pfp_associative_1_result_bounded)) * rc) + (fom_value_pfp_associative_1_result_bounded))) /\ (exists fom_gap_pfp_associative_1_result_bounded_value_bound. fom_gap_pfp_associative_1_result_bounded_value_bound + S (fom_value_pfp_associative_1_result_bounded) = p))) /\ ((exists pfaa_left_b_associative_1 pfaa_left_c_associative_1 pfaa_right_b_associative_1 pfaa_right_c_associative_1 pfaa_sum_b_associative_1 pfaa_sum_c_associative_1 pfaa_length_associative_1. ((((forall pfrep_power_associative_1_witness_common_left pfrep_left_associative_1_witness_common_left pfrep_right_associative_1_witness_common_left. ((exists pfrep_position_associative_1_witness_common_leftfirst. ((pfrep_position_associative_1_witness_common_leftfirst+S (pfrep_power_associative_1_witness_common_left)=(Lu)) /\ ((((exists ff_h_pfp_associative_1_witness_common_leftfirstentry. ff_h_pfp_associative_1_witness_common_leftfirstentry + S (pfrep_left_associative_1_witness_common_left) = S ((S (pfrep_position_associative_1_witness_common_leftfirst)) * uc)) /\ exists ff_q_pfp_associative_1_witness_common_leftfirstentry. ub = ff_q_pfp_associative_1_witness_common_leftfirstentry * S ((S (pfrep_position_associative_1_witness_common_leftfirst)) * uc) + (pfrep_left_associative_1_witness_common_left)))))) \/ (((exists pfrep_gap_associative_1_witness_common_leftfirstoutside. pfrep_gap_associative_1_witness_common_leftfirstoutside+(Lu)=(pfrep_power_associative_1_witness_common_left)) /\ (((pfrep_left_associative_1_witness_common_left)=0))))) -> ((exists pfrep_position_associative_1_witness_common_leftsecond. ((pfrep_position_associative_1_witness_common_leftsecond+S (pfrep_power_associative_1_witness_common_left)=(pfaa_length_associative_1)) /\ ((((exists ff_h_pfp_associative_1_witness_common_leftsecondentry. ff_h_pfp_associative_1_witness_common_leftsecondentry + S (pfrep_right_associative_1_witness_common_left) = S ((S (pfrep_position_associative_1_witness_common_leftsecond)) * pfaa_left_c_associative_1)) /\ exists ff_q_pfp_associative_1_witness_common_leftsecondentry. pfaa_left_b_associative_1 = ff_q_pfp_associative_1_witness_common_leftsecondentry * S ((S (pfrep_position_associative_1_witness_common_leftsecond)) * pfaa_left_c_associative_1) + (pfrep_right_associative_1_witness_common_left)))))) \/ (((exists pfrep_gap_associative_1_witness_common_leftsecondoutside. pfrep_gap_associative_1_witness_common_leftsecondoutside+(pfaa_length_associative_1)=(pfrep_power_associative_1_witness_common_left)) /\ (((pfrep_right_associative_1_witness_common_left)=0))))) -> pfrep_left_associative_1_witness_common_left=pfrep_right_associative_1_witness_common_left) /\ ((forall pfrep_power_associative_1_witness_common_right pfrep_left_associative_1_witness_common_right pfrep_right_associative_1_witness_common_right. ((exists pfrep_position_associative_1_witness_common_rightfirst. ((pfrep_position_associative_1_witness_common_rightfirst+S (pfrep_power_associative_1_witness_common_right)=(Lc)) /\ ((((exists ff_h_pfp_associative_1_witness_common_rightfirstentry. ff_h_pfp_associative_1_witness_common_rightfirstentry + S (pfrep_left_associative_1_witness_common_right) = S ((S (pfrep_position_associative_1_witness_common_rightfirst)) * cc)) /\ exists ff_q_pfp_associative_1_witness_common_rightfirstentry. cb = ff_q_pfp_associative_1_witness_common_rightfirstentry * S ((S (pfrep_position_associative_1_witness_common_rightfirst)) * cc) + (pfrep_left_associative_1_witness_common_right)))))) \/ (((exists pfrep_gap_associative_1_witness_common_rightfirstoutside. pfrep_gap_associative_1_witness_common_rightfirstoutside+(Lc)=(pfrep_power_associative_1_witness_common_right)) /\ (((pfrep_left_associative_1_witness_common_right)=0))))) -> ((exists pfrep_position_associative_1_witness_common_rightsecond. ((pfrep_position_associative_1_witness_common_rightsecond+S (pfrep_power_associative_1_witness_common_right)=(pfaa_length_associative_1)) /\ ((((exists ff_h_pfp_associative_1_witness_common_rightsecondentry. ff_h_pfp_associative_1_witness_common_rightsecondentry + S (pfrep_right_associative_1_witness_common_right) = S ((S (pfrep_position_associative_1_witness_common_rightsecond)) * pfaa_right_c_associative_1)) /\ exists ff_q_pfp_associative_1_witness_common_rightsecondentry. pfaa_right_b_associative_1 = ff_q_pfp_associative_1_witness_common_rightsecondentry * S ((S (pfrep_position_associative_1_witness_common_rightsecond)) * pfaa_right_c_associative_1) + (pfrep_right_associative_1_witness_common_right)))))) \/ (((exists pfrep_gap_associative_1_witness_common_rightsecondoutside. pfrep_gap_associative_1_witness_common_rightsecondoutside+(pfaa_length_associative_1)=(pfrep_power_associative_1_witness_common_right)) /\ (((pfrep_right_associative_1_witness_common_right)=0))))) -> pfrep_left_associative_1_witness_common_right=pfrep_right_associative_1_witness_common_right)))) /\ (((forall pfp_index_associative_1_witness_operation. (exists pfa_gap_associative_1_witness_operationindex. pfa_gap_associative_1_witness_operationindex + S (pfp_index_associative_1_witness_operation) = (pfaa_length_associative_1)) -> exists pfp_left_associative_1_witness_operation pfp_right_associative_1_witness_operation pfp_value_associative_1_witness_operation. ((((exists ff_h_pfp_associative_1_witness_operationleft. ff_h_pfp_associative_1_witness_operationleft + S (pfp_left_associative_1_witness_operation) = S ((S (pfp_index_associative_1_witness_operation)) * pfaa_left_c_associative_1)) /\ exists ff_q_pfp_associative_1_witness_operationleft. pfaa_left_b_associative_1 = ff_q_pfp_associative_1_witness_operationleft * S ((S (pfp_index_associative_1_witness_operation)) * pfaa_left_c_associative_1) + (pfp_left_associative_1_witness_operation))) /\ (((((exists ff_h_pfp_associative_1_witness_operationright. ff_h_pfp_associative_1_witness_operationright + S (pfp_right_associative_1_witness_operation) = S ((S (pfp_index_associative_1_witness_operation)) * pfaa_right_c_associative_1)) /\ exists ff_q_pfp_associative_1_witness_operationright. pfaa_right_b_associative_1 = ff_q_pfp_associative_1_witness_operationright * S ((S (pfp_index_associative_1_witness_operation)) * pfaa_right_c_associative_1) + (pfp_right_associative_1_witness_operation))) /\ (((((exists ff_h_pfp_associative_1_witness_operationtarget. ff_h_pfp_associative_1_witness_operationtarget + S (pfp_value_associative_1_witness_operation) = S ((S (pfp_index_associative_1_witness_operation)) * pfaa_sum_c_associative_1)) /\ exists ff_q_pfp_associative_1_witness_operationtarget. pfaa_sum_b_associative_1 = ff_q_pfp_associative_1_witness_operationtarget * S ((S (pfp_index_associative_1_witness_operation)) * pfaa_sum_c_associative_1) + (pfp_value_associative_1_witness_operation))) /\ ((((exists pfa_gap_associative_1_witness_operationoperationleft. pfa_gap_associative_1_witness_operationoperationleft + S (pfp_left_associative_1_witness_operation) = (p)) /\ (((exists pfa_gap_associative_1_witness_operationoperationright. pfa_gap_associative_1_witness_operationoperationright + S (pfp_right_associative_1_witness_operation) = (p)) /\ ((((exists pfa_gap_associative_1_witness_operationoperationresultbound. pfa_gap_associative_1_witness_operationoperationresultbound + S (pfp_value_associative_1_witness_operation) = (p)) /\ ((exists pfa_offset_left_associative_1_witness_operationoperationresultcongruence pfa_offset_right_associative_1_witness_operationoperationresultcongruence. ((pfp_left_associative_1_witness_operation) + (pfp_right_associative_1_witness_operation)) + (p) * pfa_offset_left_associative_1_witness_operationoperationresultcongruence = (pfp_value_associative_1_witness_operation) + (p) * pfa_offset_right_associative_1_witness_operationoperationresultcongruence)))))))))))))))) /\ ((forall pfrep_power_associative_1_witness_output pfrep_left_associative_1_witness_output pfrep_right_associative_1_witness_output. ((exists pfrep_position_associative_1_witness_outputfirst. ((pfrep_position_associative_1_witness_outputfirst+S (pfrep_power_associative_1_witness_output)=(pfaa_length_associative_1)) /\ ((((exists ff_h_pfp_associative_1_witness_outputfirstentry. ff_h_pfp_associative_1_witness_outputfirstentry + S (pfrep_left_associative_1_witness_output) = S ((S (pfrep_position_associative_1_witness_outputfirst)) * pfaa_sum_c_associative_1)) /\ exists ff_q_pfp_associative_1_witness_outputfirstentry. pfaa_sum_b_associative_1 = ff_q_pfp_associative_1_witness_outputfirstentry * S ((S (pfrep_position_associative_1_witness_outputfirst)) * pfaa_sum_c_associative_1) + (pfrep_left_associative_1_witness_output)))))) \/ (((exists pfrep_gap_associative_1_witness_outputfirstoutside. pfrep_gap_associative_1_witness_outputfirstoutside+(pfaa_length_associative_1)=(pfrep_power_associative_1_witness_output)) /\ (((pfrep_left_associative_1_witness_output)=0))))) -> ((exists pfrep_position_associative_1_witness_outputsecond. ((pfrep_position_associative_1_witness_outputsecond+S (pfrep_power_associative_1_witness_output)=(Lr)) /\ ((((exists ff_h_pfp_associative_1_witness_outputsecondentry. ff_h_pfp_associative_1_witness_outputsecondentry + S (pfrep_right_associative_1_witness_output) = S ((S (pfrep_position_associative_1_witness_outputsecond)) * rc)) /\ exists ff_q_pfp_associative_1_witness_outputsecondentry. rb = ff_q_pfp_associative_1_witness_outputsecondentry * S ((S (pfrep_position_associative_1_witness_outputsecond)) * rc) + (pfrep_right_associative_1_witness_output)))))) \/ (((exists pfrep_gap_associative_1_witness_outputsecondoutside. pfrep_gap_associative_1_witness_outputsecondoutside+(Lr)=(pfrep_power_associative_1_witness_output)) /\ (((pfrep_right_associative_1_witness_output)=0))))) -> pfrep_left_associative_1_witness_output=pfrep_right_associative_1_witness_output))))))))))))) -> (((forall fom_index_pfp_associative_2_left_bounded. (exists fom_gap_pfp_associative_2_left_bounded_index_bound. fom_gap_pfp_associative_2_left_bounded_index_bound + S (fom_index_pfp_associative_2_left_bounded) = Lb) -> exists fom_value_pfp_associative_2_left_bounded. ((((exists fom_beta_height_pfp_associative_2_left_bounded_entry. fom_beta_height_pfp_associative_2_left_bounded_entry + S (fom_value_pfp_associative_2_left_bounded) = S ((S (fom_index_pfp_associative_2_left_bounded)) * bc)) /\ exists fom_beta_quotient_pfp_associative_2_left_bounded_entry. bb = fom_beta_quotient_pfp_associative_2_left_bounded_entry * S ((S (fom_index_pfp_associative_2_left_bounded)) * bc) + (fom_value_pfp_associative_2_left_bounded))) /\ (exists fom_gap_pfp_associative_2_left_bounded_value_bound. fom_gap_pfp_associative_2_left_bounded_value_bound + S (fom_value_pfp_associative_2_left_bounded) = p))) /\ (((forall fom_index_pfp_associative_2_right_bounded. (exists fom_gap_pfp_associative_2_right_bounded_index_bound. fom_gap_pfp_associative_2_right_bounded_index_bound + S (fom_index_pfp_associative_2_right_bounded) = Lc) -> exists fom_value_pfp_associative_2_right_bounded. ((((exists fom_beta_height_pfp_associative_2_right_bounded_entry. fom_beta_height_pfp_associative_2_right_bounded_entry + S (fom_value_pfp_associative_2_right_bounded) = S ((S (fom_index_pfp_associative_2_right_bounded)) * cc)) /\ exists fom_beta_quotient_pfp_associative_2_right_bounded_entry. cb = fom_beta_quotient_pfp_associative_2_right_bounded_entry * S ((S (fom_index_pfp_associative_2_right_bounded)) * cc) + (fom_value_pfp_associative_2_right_bounded))) /\ (exists fom_gap_pfp_associative_2_right_bounded_value_bound. fom_gap_pfp_associative_2_right_bounded_value_bound + S (fom_value_pfp_associative_2_right_bounded) = p))) /\ (((forall fom_index_pfp_associative_2_result_bounded. (exists fom_gap_pfp_associative_2_result_bounded_index_bound. fom_gap_pfp_associative_2_result_bounded_index_bound + S (fom_index_pfp_associative_2_result_bounded) = Lv) -> exists fom_value_pfp_associative_2_result_bounded. ((((exists fom_beta_height_pfp_associative_2_result_bounded_entry. fom_beta_height_pfp_associative_2_result_bounded_entry + S (fom_value_pfp_associative_2_result_bounded) = S ((S (fom_index_pfp_associative_2_result_bounded)) * vc)) /\ exists fom_beta_quotient_pfp_associative_2_result_bounded_entry. vb = fom_beta_quotient_pfp_associative_2_result_bounded_entry * S ((S (fom_index_pfp_associative_2_result_bounded)) * vc) + (fom_value_pfp_associative_2_result_bounded))) /\ (exists fom_gap_pfp_associative_2_result_bounded_value_bound. fom_gap_pfp_associative_2_result_bounded_value_bound + S (fom_value_pfp_associative_2_result_bounded) = p))) /\ ((exists pfaa_left_b_associative_2 pfaa_left_c_associative_2 pfaa_right_b_associative_2 pfaa_right_c_associative_2 pfaa_sum_b_associative_2 pfaa_sum_c_associative_2 pfaa_length_associative_2. ((((forall pfrep_power_associative_2_witness_common_left pfrep_left_associative_2_witness_common_left pfrep_right_associative_2_witness_common_left. ((exists pfrep_position_associative_2_witness_common_leftfirst. ((pfrep_position_associative_2_witness_common_leftfirst+S (pfrep_power_associative_2_witness_common_left)=(Lb)) /\ ((((exists ff_h_pfp_associative_2_witness_common_leftfirstentry. ff_h_pfp_associative_2_witness_common_leftfirstentry + S (pfrep_left_associative_2_witness_common_left) = S ((S (pfrep_position_associative_2_witness_common_leftfirst)) * bc)) /\ exists ff_q_pfp_associative_2_witness_common_leftfirstentry. bb = ff_q_pfp_associative_2_witness_common_leftfirstentry * S ((S (pfrep_position_associative_2_witness_common_leftfirst)) * bc) + (pfrep_left_associative_2_witness_common_left)))))) \/ (((exists pfrep_gap_associative_2_witness_common_leftfirstoutside. pfrep_gap_associative_2_witness_common_leftfirstoutside+(Lb)=(pfrep_power_associative_2_witness_common_left)) /\ (((pfrep_left_associative_2_witness_common_left)=0))))) -> ((exists pfrep_position_associative_2_witness_common_leftsecond. ((pfrep_position_associative_2_witness_common_leftsecond+S (pfrep_power_associative_2_witness_common_left)=(pfaa_length_associative_2)) /\ ((((exists ff_h_pfp_associative_2_witness_common_leftsecondentry. ff_h_pfp_associative_2_witness_common_leftsecondentry + S (pfrep_right_associative_2_witness_common_left) = S ((S (pfrep_position_associative_2_witness_common_leftsecond)) * pfaa_left_c_associative_2)) /\ exists ff_q_pfp_associative_2_witness_common_leftsecondentry. pfaa_left_b_associative_2 = ff_q_pfp_associative_2_witness_common_leftsecondentry * S ((S (pfrep_position_associative_2_witness_common_leftsecond)) * pfaa_left_c_associative_2) + (pfrep_right_associative_2_witness_common_left)))))) \/ (((exists pfrep_gap_associative_2_witness_common_leftsecondoutside. pfrep_gap_associative_2_witness_common_leftsecondoutside+(pfaa_length_associative_2)=(pfrep_power_associative_2_witness_common_left)) /\ (((pfrep_right_associative_2_witness_common_left)=0))))) -> pfrep_left_associative_2_witness_common_left=pfrep_right_associative_2_witness_common_left) /\ ((forall pfrep_power_associative_2_witness_common_right pfrep_left_associative_2_witness_common_right pfrep_right_associative_2_witness_common_right. ((exists pfrep_position_associative_2_witness_common_rightfirst. ((pfrep_position_associative_2_witness_common_rightfirst+S (pfrep_power_associative_2_witness_common_right)=(Lc)) /\ ((((exists ff_h_pfp_associative_2_witness_common_rightfirstentry. ff_h_pfp_associative_2_witness_common_rightfirstentry + S (pfrep_left_associative_2_witness_common_right) = S ((S (pfrep_position_associative_2_witness_common_rightfirst)) * cc)) /\ exists ff_q_pfp_associative_2_witness_common_rightfirstentry. cb = ff_q_pfp_associative_2_witness_common_rightfirstentry * S ((S (pfrep_position_associative_2_witness_common_rightfirst)) * cc) + (pfrep_left_associative_2_witness_common_right)))))) \/ (((exists pfrep_gap_associative_2_witness_common_rightfirstoutside. pfrep_gap_associative_2_witness_common_rightfirstoutside+(Lc)=(pfrep_power_associative_2_witness_common_right)) /\ (((pfrep_left_associative_2_witness_common_right)=0))))) -> ((exists pfrep_position_associative_2_witness_common_rightsecond. ((pfrep_position_associative_2_witness_common_rightsecond+S (pfrep_power_associative_2_witness_common_right)=(pfaa_length_associative_2)) /\ ((((exists ff_h_pfp_associative_2_witness_common_rightsecondentry. ff_h_pfp_associative_2_witness_common_rightsecondentry + S (pfrep_right_associative_2_witness_common_right) = S ((S (pfrep_position_associative_2_witness_common_rightsecond)) * pfaa_right_c_associative_2)) /\ exists ff_q_pfp_associative_2_witness_common_rightsecondentry. pfaa_right_b_associative_2 = ff_q_pfp_associative_2_witness_common_rightsecondentry * S ((S (pfrep_position_associative_2_witness_common_rightsecond)) * pfaa_right_c_associative_2) + (pfrep_right_associative_2_witness_common_right)))))) \/ (((exists pfrep_gap_associative_2_witness_common_rightsecondoutside. pfrep_gap_associative_2_witness_common_rightsecondoutside+(pfaa_length_associative_2)=(pfrep_power_associative_2_witness_common_right)) /\ (((pfrep_right_associative_2_witness_common_right)=0))))) -> pfrep_left_associative_2_witness_common_right=pfrep_right_associative_2_witness_common_right)))) /\ (((forall pfp_index_associative_2_witness_operation. (exists pfa_gap_associative_2_witness_operationindex. pfa_gap_associative_2_witness_operationindex + S (pfp_index_associative_2_witness_operation) = (pfaa_length_associative_2)) -> exists pfp_left_associative_2_witness_operation pfp_right_associative_2_witness_operation pfp_value_associative_2_witness_operation. ((((exists ff_h_pfp_associative_2_witness_operationleft. ff_h_pfp_associative_2_witness_operationleft + S (pfp_left_associative_2_witness_operation) = S ((S (pfp_index_associative_2_witness_operation)) * pfaa_left_c_associative_2)) /\ exists ff_q_pfp_associative_2_witness_operationleft. pfaa_left_b_associative_2 = ff_q_pfp_associative_2_witness_operationleft * S ((S (pfp_index_associative_2_witness_operation)) * pfaa_left_c_associative_2) + (pfp_left_associative_2_witness_operation))) /\ (((((exists ff_h_pfp_associative_2_witness_operationright. ff_h_pfp_associative_2_witness_operationright + S (pfp_right_associative_2_witness_operation) = S ((S (pfp_index_associative_2_witness_operation)) * pfaa_right_c_associative_2)) /\ exists ff_q_pfp_associative_2_witness_operationright. pfaa_right_b_associative_2 = ff_q_pfp_associative_2_witness_operationright * S ((S (pfp_index_associative_2_witness_operation)) * pfaa_right_c_associative_2) + (pfp_right_associative_2_witness_operation))) /\ (((((exists ff_h_pfp_associative_2_witness_operationtarget. ff_h_pfp_associative_2_witness_operationtarget + S (pfp_value_associative_2_witness_operation) = S ((S (pfp_index_associative_2_witness_operation)) * pfaa_sum_c_associative_2)) /\ exists ff_q_pfp_associative_2_witness_operationtarget. pfaa_sum_b_associative_2 = ff_q_pfp_associative_2_witness_operationtarget * S ((S (pfp_index_associative_2_witness_operation)) * pfaa_sum_c_associative_2) + (pfp_value_associative_2_witness_operation))) /\ ((((exists pfa_gap_associative_2_witness_operationoperationleft. pfa_gap_associative_2_witness_operationoperationleft + S (pfp_left_associative_2_witness_operation) = (p)) /\ (((exists pfa_gap_associative_2_witness_operationoperationright. pfa_gap_associative_2_witness_operationoperationright + S (pfp_right_associative_2_witness_operation) = (p)) /\ ((((exists pfa_gap_associative_2_witness_operationoperationresultbound. pfa_gap_associative_2_witness_operationoperationresultbound + S (pfp_value_associative_2_witness_operation) = (p)) /\ ((exists pfa_offset_left_associative_2_witness_operationoperationresultcongruence pfa_offset_right_associative_2_witness_operationoperationresultcongruence. ((pfp_left_associative_2_witness_operation) + (pfp_right_associative_2_witness_operation)) + (p) * pfa_offset_left_associative_2_witness_operationoperationresultcongruence = (pfp_value_associative_2_witness_operation) + (p) * pfa_offset_right_associative_2_witness_operationoperationresultcongruence)))))))))))))))) /\ ((forall pfrep_power_associative_2_witness_output pfrep_left_associative_2_witness_output pfrep_right_associative_2_witness_output. ((exists pfrep_position_associative_2_witness_outputfirst. ((pfrep_position_associative_2_witness_outputfirst+S (pfrep_power_associative_2_witness_output)=(pfaa_length_associative_2)) /\ ((((exists ff_h_pfp_associative_2_witness_outputfirstentry. ff_h_pfp_associative_2_witness_outputfirstentry + S (pfrep_left_associative_2_witness_output) = S ((S (pfrep_position_associative_2_witness_outputfirst)) * pfaa_sum_c_associative_2)) /\ exists ff_q_pfp_associative_2_witness_outputfirstentry. pfaa_sum_b_associative_2 = ff_q_pfp_associative_2_witness_outputfirstentry * S ((S (pfrep_position_associative_2_witness_outputfirst)) * pfaa_sum_c_associative_2) + (pfrep_left_associative_2_witness_output)))))) \/ (((exists pfrep_gap_associative_2_witness_outputfirstoutside. pfrep_gap_associative_2_witness_outputfirstoutside+(pfaa_length_associative_2)=(pfrep_power_associative_2_witness_output)) /\ (((pfrep_left_associative_2_witness_output)=0))))) -> ((exists pfrep_position_associative_2_witness_outputsecond. ((pfrep_position_associative_2_witness_outputsecond+S (pfrep_power_associative_2_witness_output)=(Lv)) /\ ((((exists ff_h_pfp_associative_2_witness_outputsecondentry. ff_h_pfp_associative_2_witness_outputsecondentry + S (pfrep_right_associative_2_witness_output) = S ((S (pfrep_position_associative_2_witness_outputsecond)) * vc)) /\ exists ff_q_pfp_associative_2_witness_outputsecondentry. vb = ff_q_pfp_associative_2_witness_outputsecondentry * S ((S (pfrep_position_associative_2_witness_outputsecond)) * vc) + (pfrep_right_associative_2_witness_output)))))) \/ (((exists pfrep_gap_associative_2_witness_outputsecondoutside. pfrep_gap_associative_2_witness_outputsecondoutside+(Lv)=(pfrep_power_associative_2_witness_output)) /\ (((pfrep_right_associative_2_witness_output)=0))))) -> pfrep_left_associative_2_witness_output=pfrep_right_associative_2_witness_output))))))))))))) -> (((forall fom_index_pfp_associative_3_left_bounded. (exists fom_gap_pfp_associative_3_left_bounded_index_bound. fom_gap_pfp_associative_3_left_bounded_index_bound + S (fom_index_pfp_associative_3_left_bounded) = La) -> exists fom_value_pfp_associative_3_left_bounded. ((((exists fom_beta_height_pfp_associative_3_left_bounded_entry. fom_beta_height_pfp_associative_3_left_bounded_entry + S (fom_value_pfp_associative_3_left_bounded) = S ((S (fom_index_pfp_associative_3_left_bounded)) * ac)) /\ exists fom_beta_quotient_pfp_associative_3_left_bounded_entry. ab = fom_beta_quotient_pfp_associative_3_left_bounded_entry * S ((S (fom_index_pfp_associative_3_left_bounded)) * ac) + (fom_value_pfp_associative_3_left_bounded))) /\ (exists fom_gap_pfp_associative_3_left_bounded_value_bound. fom_gap_pfp_associative_3_left_bounded_value_bound + S (fom_value_pfp_associative_3_left_bounded) = p))) /\ (((forall fom_index_pfp_associative_3_right_bounded. (exists fom_gap_pfp_associative_3_right_bounded_index_bound. fom_gap_pfp_associative_3_right_bounded_index_bound + S (fom_index_pfp_associative_3_right_bounded) = Lv) -> exists fom_value_pfp_associative_3_right_bounded. ((((exists fom_beta_height_pfp_associative_3_right_bounded_entry. fom_beta_height_pfp_associative_3_right_bounded_entry + S (fom_value_pfp_associative_3_right_bounded) = S ((S (fom_index_pfp_associative_3_right_bounded)) * vc)) /\ exists fom_beta_quotient_pfp_associative_3_right_bounded_entry. vb = fom_beta_quotient_pfp_associative_3_right_bounded_entry * S ((S (fom_index_pfp_associative_3_right_bounded)) * vc) + (fom_value_pfp_associative_3_right_bounded))) /\ (exists fom_gap_pfp_associative_3_right_bounded_value_bound. fom_gap_pfp_associative_3_right_bounded_value_bound + S (fom_value_pfp_associative_3_right_bounded) = p))) /\ (((forall fom_index_pfp_associative_3_result_bounded. (exists fom_gap_pfp_associative_3_result_bounded_index_bound. fom_gap_pfp_associative_3_result_bounded_index_bound + S (fom_index_pfp_associative_3_result_bounded) = Ls) -> exists fom_value_pfp_associative_3_result_bounded. ((((exists fom_beta_height_pfp_associative_3_result_bounded_entry. fom_beta_height_pfp_associative_3_result_bounded_entry + S (fom_value_pfp_associative_3_result_bounded) = S ((S (fom_index_pfp_associative_3_result_bounded)) * sc)) /\ exists fom_beta_quotient_pfp_associative_3_result_bounded_entry. sb = fom_beta_quotient_pfp_associative_3_result_bounded_entry * S ((S (fom_index_pfp_associative_3_result_bounded)) * sc) + (fom_value_pfp_associative_3_result_bounded))) /\ (exists fom_gap_pfp_associative_3_result_bounded_value_bound. fom_gap_pfp_associative_3_result_bounded_value_bound + S (fom_value_pfp_associative_3_result_bounded) = p))) /\ ((exists pfaa_left_b_associative_3 pfaa_left_c_associative_3 pfaa_right_b_associative_3 pfaa_right_c_associative_3 pfaa_sum_b_associative_3 pfaa_sum_c_associative_3 pfaa_length_associative_3. ((((forall pfrep_power_associative_3_witness_common_left pfrep_left_associative_3_witness_common_left pfrep_right_associative_3_witness_common_left. ((exists pfrep_position_associative_3_witness_common_leftfirst. ((pfrep_position_associative_3_witness_common_leftfirst+S (pfrep_power_associative_3_witness_common_left)=(La)) /\ ((((exists ff_h_pfp_associative_3_witness_common_leftfirstentry. ff_h_pfp_associative_3_witness_common_leftfirstentry + S (pfrep_left_associative_3_witness_common_left) = S ((S (pfrep_position_associative_3_witness_common_leftfirst)) * ac)) /\ exists ff_q_pfp_associative_3_witness_common_leftfirstentry. ab = ff_q_pfp_associative_3_witness_common_leftfirstentry * S ((S (pfrep_position_associative_3_witness_common_leftfirst)) * ac) + (pfrep_left_associative_3_witness_common_left)))))) \/ (((exists pfrep_gap_associative_3_witness_common_leftfirstoutside. pfrep_gap_associative_3_witness_common_leftfirstoutside+(La)=(pfrep_power_associative_3_witness_common_left)) /\ (((pfrep_left_associative_3_witness_common_left)=0))))) -> ((exists pfrep_position_associative_3_witness_common_leftsecond. ((pfrep_position_associative_3_witness_common_leftsecond+S (pfrep_power_associative_3_witness_common_left)=(pfaa_length_associative_3)) /\ ((((exists ff_h_pfp_associative_3_witness_common_leftsecondentry. ff_h_pfp_associative_3_witness_common_leftsecondentry + S (pfrep_right_associative_3_witness_common_left) = S ((S (pfrep_position_associative_3_witness_common_leftsecond)) * pfaa_left_c_associative_3)) /\ exists ff_q_pfp_associative_3_witness_common_leftsecondentry. pfaa_left_b_associative_3 = ff_q_pfp_associative_3_witness_common_leftsecondentry * S ((S (pfrep_position_associative_3_witness_common_leftsecond)) * pfaa_left_c_associative_3) + (pfrep_right_associative_3_witness_common_left)))))) \/ (((exists pfrep_gap_associative_3_witness_common_leftsecondoutside. pfrep_gap_associative_3_witness_common_leftsecondoutside+(pfaa_length_associative_3)=(pfrep_power_associative_3_witness_common_left)) /\ (((pfrep_right_associative_3_witness_common_left)=0))))) -> pfrep_left_associative_3_witness_common_left=pfrep_right_associative_3_witness_common_left) /\ ((forall pfrep_power_associative_3_witness_common_right pfrep_left_associative_3_witness_common_right pfrep_right_associative_3_witness_common_right. ((exists pfrep_position_associative_3_witness_common_rightfirst. ((pfrep_position_associative_3_witness_common_rightfirst+S (pfrep_power_associative_3_witness_common_right)=(Lv)) /\ ((((exists ff_h_pfp_associative_3_witness_common_rightfirstentry. ff_h_pfp_associative_3_witness_common_rightfirstentry + S (pfrep_left_associative_3_witness_common_right) = S ((S (pfrep_position_associative_3_witness_common_rightfirst)) * vc)) /\ exists ff_q_pfp_associative_3_witness_common_rightfirstentry. vb = ff_q_pfp_associative_3_witness_common_rightfirstentry * S ((S (pfrep_position_associative_3_witness_common_rightfirst)) * vc) + (pfrep_left_associative_3_witness_common_right)))))) \/ (((exists pfrep_gap_associative_3_witness_common_rightfirstoutside. pfrep_gap_associative_3_witness_common_rightfirstoutside+(Lv)=(pfrep_power_associative_3_witness_common_right)) /\ (((pfrep_left_associative_3_witness_common_right)=0))))) -> ((exists pfrep_position_associative_3_witness_common_rightsecond. ((pfrep_position_associative_3_witness_common_rightsecond+S (pfrep_power_associative_3_witness_common_right)=(pfaa_length_associative_3)) /\ ((((exists ff_h_pfp_associative_3_witness_common_rightsecondentry. ff_h_pfp_associative_3_witness_common_rightsecondentry + S (pfrep_right_associative_3_witness_common_right) = S ((S (pfrep_position_associative_3_witness_common_rightsecond)) * pfaa_right_c_associative_3)) /\ exists ff_q_pfp_associative_3_witness_common_rightsecondentry. pfaa_right_b_associative_3 = ff_q_pfp_associative_3_witness_common_rightsecondentry * S ((S (pfrep_position_associative_3_witness_common_rightsecond)) * pfaa_right_c_associative_3) + (pfrep_right_associative_3_witness_common_right)))))) \/ (((exists pfrep_gap_associative_3_witness_common_rightsecondoutside. pfrep_gap_associative_3_witness_common_rightsecondoutside+(pfaa_length_associative_3)=(pfrep_power_associative_3_witness_common_right)) /\ (((pfrep_right_associative_3_witness_common_right)=0))))) -> pfrep_left_associative_3_witness_common_right=pfrep_right_associative_3_witness_common_right)))) /\ (((forall pfp_index_associative_3_witness_operation. (exists pfa_gap_associative_3_witness_operationindex. pfa_gap_associative_3_witness_operationindex + S (pfp_index_associative_3_witness_operation) = (pfaa_length_associative_3)) -> exists pfp_left_associative_3_witness_operation pfp_right_associative_3_witness_operation pfp_value_associative_3_witness_operation. ((((exists ff_h_pfp_associative_3_witness_operationleft. ff_h_pfp_associative_3_witness_operationleft + S (pfp_left_associative_3_witness_operation) = S ((S (pfp_index_associative_3_witness_operation)) * pfaa_left_c_associative_3)) /\ exists ff_q_pfp_associative_3_witness_operationleft. pfaa_left_b_associative_3 = ff_q_pfp_associative_3_witness_operationleft * S ((S (pfp_index_associative_3_witness_operation)) * pfaa_left_c_associative_3) + (pfp_left_associative_3_witness_operation))) /\ (((((exists ff_h_pfp_associative_3_witness_operationright. ff_h_pfp_associative_3_witness_operationright + S (pfp_right_associative_3_witness_operation) = S ((S (pfp_index_associative_3_witness_operation)) * pfaa_right_c_associative_3)) /\ exists ff_q_pfp_associative_3_witness_operationright. pfaa_right_b_associative_3 = ff_q_pfp_associative_3_witness_operationright * S ((S (pfp_index_associative_3_witness_operation)) * pfaa_right_c_associative_3) + (pfp_right_associative_3_witness_operation))) /\ (((((exists ff_h_pfp_associative_3_witness_operationtarget. ff_h_pfp_associative_3_witness_operationtarget + S (pfp_value_associative_3_witness_operation) = S ((S (pfp_index_associative_3_witness_operation)) * pfaa_sum_c_associative_3)) /\ exists ff_q_pfp_associative_3_witness_operationtarget. pfaa_sum_b_associative_3 = ff_q_pfp_associative_3_witness_operationtarget * S ((S (pfp_index_associative_3_witness_operation)) * pfaa_sum_c_associative_3) + (pfp_value_associative_3_witness_operation))) /\ ((((exists pfa_gap_associative_3_witness_operationoperationleft. pfa_gap_associative_3_witness_operationoperationleft + S (pfp_left_associative_3_witness_operation) = (p)) /\ (((exists pfa_gap_associative_3_witness_operationoperationright. pfa_gap_associative_3_witness_operationoperationright + S (pfp_right_associative_3_witness_operation) = (p)) /\ ((((exists pfa_gap_associative_3_witness_operationoperationresultbound. pfa_gap_associative_3_witness_operationoperationresultbound + S (pfp_value_associative_3_witness_operation) = (p)) /\ ((exists pfa_offset_left_associative_3_witness_operationoperationresultcongruence pfa_offset_right_associative_3_witness_operationoperationresultcongruence. ((pfp_left_associative_3_witness_operation) + (pfp_right_associative_3_witness_operation)) + (p) * pfa_offset_left_associative_3_witness_operationoperationresultcongruence = (pfp_value_associative_3_witness_operation) + (p) * pfa_offset_right_associative_3_witness_operationoperationresultcongruence)))))))))))))))) /\ ((forall pfrep_power_associative_3_witness_output pfrep_left_associative_3_witness_output pfrep_right_associative_3_witness_output. ((exists pfrep_position_associative_3_witness_outputfirst. ((pfrep_position_associative_3_witness_outputfirst+S (pfrep_power_associative_3_witness_output)=(pfaa_length_associative_3)) /\ ((((exists ff_h_pfp_associative_3_witness_outputfirstentry. ff_h_pfp_associative_3_witness_outputfirstentry + S (pfrep_left_associative_3_witness_output) = S ((S (pfrep_position_associative_3_witness_outputfirst)) * pfaa_sum_c_associative_3)) /\ exists ff_q_pfp_associative_3_witness_outputfirstentry. pfaa_sum_b_associative_3 = ff_q_pfp_associative_3_witness_outputfirstentry * S ((S (pfrep_position_associative_3_witness_outputfirst)) * pfaa_sum_c_associative_3) + (pfrep_left_associative_3_witness_output)))))) \/ (((exists pfrep_gap_associative_3_witness_outputfirstoutside. pfrep_gap_associative_3_witness_outputfirstoutside+(pfaa_length_associative_3)=(pfrep_power_associative_3_witness_output)) /\ (((pfrep_left_associative_3_witness_output)=0))))) -> ((exists pfrep_position_associative_3_witness_outputsecond. ((pfrep_position_associative_3_witness_outputsecond+S (pfrep_power_associative_3_witness_output)=(Ls)) /\ ((((exists ff_h_pfp_associative_3_witness_outputsecondentry. ff_h_pfp_associative_3_witness_outputsecondentry + S (pfrep_right_associative_3_witness_output) = S ((S (pfrep_position_associative_3_witness_outputsecond)) * sc)) /\ exists ff_q_pfp_associative_3_witness_outputsecondentry. sb = ff_q_pfp_associative_3_witness_outputsecondentry * S ((S (pfrep_position_associative_3_witness_outputsecond)) * sc) + (pfrep_right_associative_3_witness_output)))))) \/ (((exists pfrep_gap_associative_3_witness_outputsecondoutside. pfrep_gap_associative_3_witness_outputsecondoutside+(Ls)=(pfrep_power_associative_3_witness_output)) /\ (((pfrep_right_associative_3_witness_output)=0))))) -> pfrep_left_associative_3_witness_output=pfrep_right_associative_3_witness_output))))))))))))) -> (forall pfrep_power_associative_result pfrep_left_associative_result pfrep_right_associative_result. ((exists pfrep_position_associative_resultfirst. ((pfrep_position_associative_resultfirst+S (pfrep_power_associative_result)=(Lr)) /\ ((((exists ff_h_pfp_associative_resultfirstentry. ff_h_pfp_associative_resultfirstentry + S (pfrep_left_associative_result) = S ((S (pfrep_position_associative_resultfirst)) * rc)) /\ exists ff_q_pfp_associative_resultfirstentry. rb = ff_q_pfp_associative_resultfirstentry * S ((S (pfrep_position_associative_resultfirst)) * rc) + (pfrep_left_associative_result)))))) \/ (((exists pfrep_gap_associative_resultfirstoutside. pfrep_gap_associative_resultfirstoutside+(Lr)=(pfrep_power_associative_result)) /\ (((pfrep_left_associative_result)=0))))) -> ((exists pfrep_position_associative_resultsecond. ((pfrep_position_associative_resultsecond+S (pfrep_power_associative_result)=(Ls)) /\ ((((exists ff_h_pfp_associative_resultsecondentry. ff_h_pfp_associative_resultsecondentry + S (pfrep_right_associative_result) = S ((S (pfrep_position_associative_resultsecond)) * sc)) /\ exists ff_q_pfp_associative_resultsecondentry. sb = ff_q_pfp_associative_resultsecondentry * S ((S (pfrep_position_associative_resultsecond)) * sc) + (pfrep_right_associative_result)))))) \/ (((exists pfrep_gap_associative_resultsecondoutside. pfrep_gap_associative_resultsecondoutside+(Ls)=(pfrep_power_associative_result)) /\ (((pfrep_right_associative_result)=0))))) -> pfrep_left_associative_result=pfrep_right_associative_result)

Complete tactic proof in conservative notation

All 531 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.

Read the argument

Proof checkpoints

531 script commands · 135 reading checkpoints · 38 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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (3)
01Fix variables and assumptionsL1–10

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

  1. L1
    intro p
  2. L2
    intro ab
  3. L3
    intro ac
  4. L4
    intro La
  5. L5
    intro bb
  6. L6
    intro bc
  7. L7
    intro Lb
  8. L8
    intro cb
  9. L9
    intro cc
  10. L10
    intro Lc
02Fix variables and assumptionsL11–20

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

  1. L11
    intro ub
  2. L12
    intro uc
  3. L13
    intro Lu
  4. L14
    intro vb
  5. L15
    intro vc
  6. L16
    intro Lv
  7. L17
    intro rb
  8. L18
    intro rc
  9. L19
    intro Lr
  10. L20
    intro sb
03Fix variables and assumptionsL21–27

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

  1. L21
    intro sc
  2. L22
    intro Ls
  3. L23
    intro hp
  4. L24
    intro hab
  5. L25
    intro hleft
  6. L26
    intro hbc
  7. L27
    intro hright
04Establish hab_boundedL28–37

Establish this local claim before using it. It is not an additional assumption.

  1. L28
    have hab_bounded : BetaPrefixInto(ab,ac,La,p) ∧ (BetaPrefixInto(bb,bc,Lb,p) ∧ BetaPrefixInto(ub,uc,Lu,p))Definitions: BetaPrefixInto(ab,ac,La,p)BetaPrefixInto(bb,bc,Lb,p)BetaPrefixInto(ub,uc,Lu,p)Original native command in the exact edition
  2. L29
    specialize prime_field_polynomial_aligned_add_bounded (p)
  3. L30
    specialize prime_field_polynomial_aligned_add_bounded (ab)
  4. L31
    specialize prime_field_polynomial_aligned_add_bounded (ac)
  5. L32
    specialize prime_field_polynomial_aligned_add_bounded (La)
  6. L33
    specialize prime_field_polynomial_aligned_add_bounded (bb)
  7. L34
    specialize prime_field_polynomial_aligned_add_bounded (bc)
  8. L35
    specialize prime_field_polynomial_aligned_add_bounded (Lb)
  9. L36
    specialize prime_field_polynomial_aligned_add_bounded (ub)
  10. L37
    specialize prime_field_polynomial_aligned_add_bounded (uc)
05Use earlier factsL38–40

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

  1. L38
    specialize prime_field_polynomial_aligned_add_bounded (Lu)
  2. L39
    apply prime_field_polynomial_aligned_add_bounded
  3. L40
    exact hab
06Separate the logical casesL41–42

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

  1. L41
    cases hab_bounded
  2. L42
    cases hab_bounded_right
07Establish hleft_boundedL43–52

Establish this local claim before using it. It is not an additional assumption.

  1. L43
    have hleft_bounded : BetaPrefixInto(ub,uc,Lu,p) ∧ (BetaPrefixInto(cb,cc,Lc,p) ∧ BetaPrefixInto(rb,rc,Lr,p))Definitions: BetaPrefixInto(ub,uc,Lu,p)BetaPrefixInto(cb,cc,Lc,p)BetaPrefixInto(rb,rc,Lr,p)Original native command in the exact edition
  2. L44
    specialize prime_field_polynomial_aligned_add_bounded (p)
  3. L45
    specialize prime_field_polynomial_aligned_add_bounded (ub)
  4. L46
    specialize prime_field_polynomial_aligned_add_bounded (uc)
  5. L47
    specialize prime_field_polynomial_aligned_add_bounded (Lu)
  6. L48
    specialize prime_field_polynomial_aligned_add_bounded (cb)
  7. L49
    specialize prime_field_polynomial_aligned_add_bounded (cc)
  8. L50
    specialize prime_field_polynomial_aligned_add_bounded (Lc)
  9. L51
    specialize prime_field_polynomial_aligned_add_bounded (rb)
  10. L52
    specialize prime_field_polynomial_aligned_add_bounded (rc)
08Use earlier factsL53–55

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

  1. L53
    specialize prime_field_polynomial_aligned_add_bounded (Lr)
  2. L54
    apply prime_field_polynomial_aligned_add_bounded
  3. L55
    exact hleft
09Separate the logical casesL56–57

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

  1. L56
    cases hleft_bounded
  2. L57
    cases hleft_bounded_right
10Establish hbc_boundedL58–67

Establish this local claim before using it. It is not an additional assumption.

  1. L58
    have hbc_bounded : BetaPrefixInto(bb,bc,Lb,p) ∧ (BetaPrefixInto(cb,cc,Lc,p) ∧ BetaPrefixInto(vb,vc,Lv,p))Definitions: BetaPrefixInto(bb,bc,Lb,p)BetaPrefixInto(cb,cc,Lc,p)BetaPrefixInto(vb,vc,Lv,p)Original native command in the exact edition
  2. L59
    specialize prime_field_polynomial_aligned_add_bounded (p)
  3. L60
    specialize prime_field_polynomial_aligned_add_bounded (bb)
  4. L61
    specialize prime_field_polynomial_aligned_add_bounded (bc)
  5. L62
    specialize prime_field_polynomial_aligned_add_bounded (Lb)
  6. L63
    specialize prime_field_polynomial_aligned_add_bounded (cb)
  7. L64
    specialize prime_field_polynomial_aligned_add_bounded (cc)
  8. L65
    specialize prime_field_polynomial_aligned_add_bounded (Lc)
  9. L66
    specialize prime_field_polynomial_aligned_add_bounded (vb)
  10. L67
    specialize prime_field_polynomial_aligned_add_bounded (vc)
11Use earlier factsL68–70

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

  1. L68
    specialize prime_field_polynomial_aligned_add_bounded (Lv)
  2. L69
    apply prime_field_polynomial_aligned_add_bounded
  3. L70
    exact hbc
12Separate the logical casesL71–72

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

  1. L71
    cases hbc_bounded
  2. L72
    cases hbc_bounded_right
13Establish hright_boundedL73–82

Establish this local claim before using it. It is not an additional assumption.

  1. L73
    have hright_bounded : BetaPrefixInto(ab,ac,La,p) ∧ (BetaPrefixInto(vb,vc,Lv,p) ∧ BetaPrefixInto(sb,sc,Ls,p))Definitions: BetaPrefixInto(ab,ac,La,p)BetaPrefixInto(vb,vc,Lv,p)BetaPrefixInto(sb,sc,Ls,p)Original native command in the exact edition
  2. L74
    specialize prime_field_polynomial_aligned_add_bounded (p)
  3. L75
    specialize prime_field_polynomial_aligned_add_bounded (ab)
  4. L76
    specialize prime_field_polynomial_aligned_add_bounded (ac)
  5. L77
    specialize prime_field_polynomial_aligned_add_bounded (La)
  6. L78
    specialize prime_field_polynomial_aligned_add_bounded (vb)
  7. L79
    specialize prime_field_polynomial_aligned_add_bounded (vc)
  8. L80
    specialize prime_field_polynomial_aligned_add_bounded (Lv)
  9. L81
    specialize prime_field_polynomial_aligned_add_bounded (sb)
  10. L82
    specialize prime_field_polynomial_aligned_add_bounded (sc)
14Use earlier factsL83–85

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

  1. L83
    specialize prime_field_polynomial_aligned_add_bounded (Ls)
  2. L84
    apply prime_field_polynomial_aligned_add_bounded
  3. L85
    exact hright
15Separate the logical casesL86–87

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

  1. L86
    cases hright_bounded
  2. L87
    cases hright_bounded_right
16Establish associative_representative_0L88–97

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.

  1. L88
    have associative_representative_0 : ∃ associative_representative_0_code. ∃ associative_representative_0_scale. BetaPrefixInto(associative_representative_0_code,associative_representative_0_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p) ∧ PolynomialEquivalent(ab,ac,La,associative_representative_0_code,associative_representative_0_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: BetaPrefixInto(associative_representative_0_code,associative_representative_0_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(ab,ac,La,associative_representative_0_code,associative_representative_0_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L89
    specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  3. L90
    specialize prime_field_polynomial_bounded_representative_at_length_exists (ab)
  4. L91
    specialize prime_field_polynomial_bounded_representative_at_length_exists (ac)
  5. L92
    specialize prime_field_polynomial_bounded_representative_at_length_exists (La)
  6. L93
    specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  7. L94
    apply prime_field_polynomial_bounded_representative_at_length_exists
  8. L95
    exact hp
  9. L96
    exact hab_bounded_left
  10. L97
    specialize le_add_right (La)
17Use earlier factsL98–99

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

  1. L98
    specialize le_add_right ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  2. L99
    apply le_add_right
18Separate the logical casesL100–102

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

  1. L100
    cases associative_representative_0
  2. L101
    cases associative_representative_0_witness
  3. L102
    cases associative_representative_0_witness_witness
19Establish associative_representative_1L103–111

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.

  1. L103
    have associative_representative_1 : ∃ associative_representative_1_code. ∃ associative_representative_1_scale. BetaPrefixInto(associative_representative_1_code,associative_representative_1_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p) ∧ PolynomialEquivalent(bb,bc,Lb,associative_representative_1_code,associative_representative_1_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: BetaPrefixInto(associative_representative_1_code,associative_representative_1_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(bb,bc,Lb,associative_representative_1_code,associative_representative_1_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L104
    specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  3. L105
    specialize prime_field_polynomial_bounded_representative_at_length_exists (bb)
  4. L106
    specialize prime_field_polynomial_bounded_representative_at_length_exists (bc)
  5. L107
    specialize prime_field_polynomial_bounded_representative_at_length_exists (Lb)
  6. L108
    specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  7. L109
    apply prime_field_polynomial_bounded_representative_at_length_exists
  8. L110
    exact hp
  9. L111
    exact hab_bounded_right_left
20Establish length_bound_associative_representative_1L112–120

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

  1. L112
    have length_bound_associative_representative_1 : Le(Lb,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Definitions: Le(Lb,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Original native command in the exact edition
  2. L113
    specialize le_add_right (Lb)
  3. L114
    specialize le_add_right ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  4. L115
    apply le_add_right
  5. L116
    specialize le_trans (Lb)
  6. L117
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  7. L118
    specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  8. L119
    apply le_trans
  9. L120
    exact length_bound_associative_representative_1
21Construct an explicit witnessL121–121

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

  1. L121
    exists La
22Calculate and transport equalitiesL122–122

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

  1. L122
    refl
23Separate the logical casesL123–125

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

  1. L123
    cases associative_representative_1
  2. L124
    cases associative_representative_1_witness
  3. L125
    cases associative_representative_1_witness_witness
24Establish associative_representative_2L126–134

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.

  1. L126
    have associative_representative_2 : ∃ associative_representative_2_code. ∃ associative_representative_2_scale. BetaPrefixInto(associative_representative_2_code,associative_representative_2_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p) ∧ PolynomialEquivalent(cb,cc,Lc,associative_representative_2_code,associative_representative_2_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: BetaPrefixInto(associative_representative_2_code,associative_representative_2_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(cb,cc,Lc,associative_representative_2_code,associative_representative_2_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L127
    specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  3. L128
    specialize prime_field_polynomial_bounded_representative_at_length_exists (cb)
  4. L129
    specialize prime_field_polynomial_bounded_representative_at_length_exists (cc)
  5. L130
    specialize prime_field_polynomial_bounded_representative_at_length_exists (Lc)
  6. L131
    specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  7. L132
    apply prime_field_polynomial_bounded_representative_at_length_exists
  8. L133
    exact hp
  9. L134
    exact hbc_bounded_right_left
25Establish length_bound_associative_representative_2L135–135

Establish this local claim before using it. It is not an additional assumption.

  1. L135
    have length_bound_associative_representative_2 : Le(Lc,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Definitions: Le(Lc,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Original native command in the exact edition
26Establish length_bound_associative_representative_2_innerL136–144

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

  1. L136
    have length_bound_associative_representative_2_inner : Le(Lc,Lc + (Lu + (Lv + (Lr + Ls))))Definitions: Le(Lc,Lc + (Lu + (Lv + (Lr + Ls))))Original native command in the exact edition
  2. L137
    specialize le_add_right (Lc)
  3. L138
    specialize le_add_right ((Lu)+((Lv)+((Lr)+(Ls))))
  4. L139
    apply le_add_right
  5. L140
    specialize le_trans (Lc)
  6. L141
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  7. L142
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  8. L143
    apply le_trans
  9. L144
    exact length_bound_associative_representative_2_inner
27Construct an explicit witnessL145–145

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

  1. L145
    exists Lb
28Calculate and transport equalitiesL146–146

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

  1. L146
    refl
29Use earlier factsL147–151

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

  1. L147
    specialize le_trans (Lc)
  2. L148
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  3. L149
    specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  4. L150
    apply le_trans
  5. L151
    exact length_bound_associative_representative_2
30Construct an explicit witnessL152–152

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

  1. L152
    exists La
31Calculate and transport equalitiesL153–153

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

  1. L153
    refl
32Separate the logical casesL154–156

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

  1. L154
    cases associative_representative_2
  2. L155
    cases associative_representative_2_witness
  3. L156
    cases associative_representative_2_witness_witness
33Establish associative_representative_3L157–165

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.

  1. L157
    have associative_representative_3 : ∃ associative_representative_3_code. ∃ associative_representative_3_scale. BetaPrefixInto(associative_representative_3_code,associative_representative_3_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p) ∧ PolynomialEquivalent(ub,uc,Lu,associative_representative_3_code,associative_representative_3_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: BetaPrefixInto(associative_representative_3_code,associative_representative_3_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(ub,uc,Lu,associative_representative_3_code,associative_representative_3_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L158
    specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  3. L159
    specialize prime_field_polynomial_bounded_representative_at_length_exists (ub)
  4. L160
    specialize prime_field_polynomial_bounded_representative_at_length_exists (uc)
  5. L161
    specialize prime_field_polynomial_bounded_representative_at_length_exists (Lu)
  6. L162
    specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  7. L163
    apply prime_field_polynomial_bounded_representative_at_length_exists
  8. L164
    exact hp
  9. L165
    exact hab_bounded_right_right
34Establish length_bound_associative_representative_3L166–166

Establish this local claim before using it. It is not an additional assumption.

  1. L166
    have length_bound_associative_representative_3 : Le(Lu,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Definitions: Le(Lu,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Original native command in the exact edition
35Establish length_bound_associative_representative_3_innerL167–167

Establish this local claim before using it. It is not an additional assumption.

  1. L167
    have length_bound_associative_representative_3_inner : Le(Lu,Lc + (Lu + (Lv + (Lr + Ls))))Definitions: Le(Lu,Lc + (Lu + (Lv + (Lr + Ls))))Original native command in the exact edition
36Establish length_bound_associative_representative_3_inner_innerL168–176

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

  1. L168
    have length_bound_associative_representative_3_inner_inner : Le(Lu,Lu + (Lv + (Lr + Ls)))Definitions: Le(Lu,Lu + (Lv + (Lr + Ls)))Original native command in the exact edition
  2. L169
    specialize le_add_right (Lu)
  3. L170
    specialize le_add_right ((Lv)+((Lr)+(Ls)))
  4. L171
    apply le_add_right
  5. L172
    specialize le_trans (Lu)
  6. L173
    specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  7. L174
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  8. L175
    apply le_trans
  9. L176
    exact length_bound_associative_representative_3_inner_inner
37Construct an explicit witnessL177–177

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

  1. L177
    exists Lc
38Calculate and transport equalitiesL178–178

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

  1. L178
    refl
39Use earlier factsL179–183

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

  1. L179
    specialize le_trans (Lu)
  2. L180
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  3. L181
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  4. L182
    apply le_trans
  5. L183
    exact length_bound_associative_representative_3_inner
40Construct an explicit witnessL184–184

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

  1. L184
    exists Lb
41Calculate and transport equalitiesL185–185

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

  1. L185
    refl
42Use earlier factsL186–190

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

  1. L186
    specialize le_trans (Lu)
  2. L187
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  3. L188
    specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  4. L189
    apply le_trans
  5. L190
    exact length_bound_associative_representative_3
43Construct an explicit witnessL191–191

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

  1. L191
    exists La
44Calculate and transport equalitiesL192–192

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

  1. L192
    refl
45Separate the logical casesL193–195

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

  1. L193
    cases associative_representative_3
  2. L194
    cases associative_representative_3_witness
  3. L195
    cases associative_representative_3_witness_witness
46Establish associative_representative_4L196–204

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.

  1. L196
    have associative_representative_4 : ∃ associative_representative_4_code. ∃ associative_representative_4_scale. BetaPrefixInto(associative_representative_4_code,associative_representative_4_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p) ∧ PolynomialEquivalent(vb,vc,Lv,associative_representative_4_code,associative_representative_4_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: BetaPrefixInto(associative_representative_4_code,associative_representative_4_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(vb,vc,Lv,associative_representative_4_code,associative_representative_4_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L197
    specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  3. L198
    specialize prime_field_polynomial_bounded_representative_at_length_exists (vb)
  4. L199
    specialize prime_field_polynomial_bounded_representative_at_length_exists (vc)
  5. L200
    specialize prime_field_polynomial_bounded_representative_at_length_exists (Lv)
  6. L201
    specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  7. L202
    apply prime_field_polynomial_bounded_representative_at_length_exists
  8. L203
    exact hp
  9. L204
    exact hbc_bounded_right_right
47Establish length_bound_associative_representative_4L205–205

Establish this local claim before using it. It is not an additional assumption.

  1. L205
    have length_bound_associative_representative_4 : Le(Lv,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Definitions: Le(Lv,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Original native command in the exact edition
48Establish length_bound_associative_representative_4_innerL206–206

Establish this local claim before using it. It is not an additional assumption.

  1. L206
    have length_bound_associative_representative_4_inner : Le(Lv,Lc + (Lu + (Lv + (Lr + Ls))))Definitions: Le(Lv,Lc + (Lu + (Lv + (Lr + Ls))))Original native command in the exact edition
49Establish length_bound_associative_representative_4_inner_innerL207–207

Establish this local claim before using it. It is not an additional assumption.

  1. L207
    have length_bound_associative_representative_4_inner_inner : Le(Lv,Lu + (Lv + (Lr + Ls)))Definitions: Le(Lv,Lu + (Lv + (Lr + Ls)))Original native command in the exact edition
50Establish length_bound_associative_representative_4_inner_inner_innerL208–216

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

  1. L208
    have length_bound_associative_representative_4_inner_inner_inner : Le(Lv,Lv + (Lr + Ls))Definitions: Le(Lv,Lv + (Lr + Ls))Original native command in the exact edition
  2. L209
    specialize le_add_right (Lv)
  3. L210
    specialize le_add_right ((Lr)+(Ls))
  4. L211
    apply le_add_right
  5. L212
    specialize le_trans (Lv)
  6. L213
    specialize le_trans ((Lv)+((Lr)+(Ls)))
  7. L214
    specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  8. L215
    apply le_trans
  9. L216
    exact length_bound_associative_representative_4_inner_inner_inner
51Construct an explicit witnessL217–217

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

  1. L217
    exists Lu
52Calculate and transport equalitiesL218–218

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

  1. L218
    refl
53Use earlier factsL219–223

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

  1. L219
    specialize le_trans (Lv)
  2. L220
    specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  3. L221
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  4. L222
    apply le_trans
  5. L223
    exact length_bound_associative_representative_4_inner_inner
54Construct an explicit witnessL224–224

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

  1. L224
    exists Lc
55Calculate and transport equalitiesL225–225

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

  1. L225
    refl
56Use earlier factsL226–230

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

  1. L226
    specialize le_trans (Lv)
  2. L227
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  3. L228
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  4. L229
    apply le_trans
  5. L230
    exact length_bound_associative_representative_4_inner
57Construct an explicit witnessL231–231

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

  1. L231
    exists Lb
58Calculate and transport equalitiesL232–232

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

  1. L232
    refl
59Use earlier factsL233–237

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

  1. L233
    specialize le_trans (Lv)
  2. L234
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  3. L235
    specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  4. L236
    apply le_trans
  5. L237
    exact length_bound_associative_representative_4
60Construct an explicit witnessL238–238

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

  1. L238
    exists La
61Calculate and transport equalitiesL239–239

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

  1. L239
    refl
62Separate the logical casesL240–242

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

  1. L240
    cases associative_representative_4
  2. L241
    cases associative_representative_4_witness
  3. L242
    cases associative_representative_4_witness_witness
63Establish associative_representative_5L243–251

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.

  1. L243
    have associative_representative_5 : ∃ associative_representative_5_code. ∃ associative_representative_5_scale. BetaPrefixInto(associative_representative_5_code,associative_representative_5_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p) ∧ PolynomialEquivalent(rb,rc,Lr,associative_representative_5_code,associative_representative_5_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: BetaPrefixInto(associative_representative_5_code,associative_representative_5_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(rb,rc,Lr,associative_representative_5_code,associative_representative_5_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L244
    specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  3. L245
    specialize prime_field_polynomial_bounded_representative_at_length_exists (rb)
  4. L246
    specialize prime_field_polynomial_bounded_representative_at_length_exists (rc)
  5. L247
    specialize prime_field_polynomial_bounded_representative_at_length_exists (Lr)
  6. L248
    specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  7. L249
    apply prime_field_polynomial_bounded_representative_at_length_exists
  8. L250
    exact hp
  9. L251
    exact hleft_bounded_right_right
64Establish length_bound_associative_representative_5L252–252

Establish this local claim before using it. It is not an additional assumption.

  1. L252
    have length_bound_associative_representative_5 : Le(Lr,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Definitions: Le(Lr,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Original native command in the exact edition
65Establish length_bound_associative_representative_5_innerL253–253

Establish this local claim before using it. It is not an additional assumption.

  1. L253
    have length_bound_associative_representative_5_inner : Le(Lr,Lc + (Lu + (Lv + (Lr + Ls))))Definitions: Le(Lr,Lc + (Lu + (Lv + (Lr + Ls))))Original native command in the exact edition
66Establish length_bound_associative_representative_5_inner_innerL254–254

Establish this local claim before using it. It is not an additional assumption.

  1. L254
    have length_bound_associative_representative_5_inner_inner : Le(Lr,Lu + (Lv + (Lr + Ls)))Definitions: Le(Lr,Lu + (Lv + (Lr + Ls)))Original native command in the exact edition
67Establish length_bound_associative_representative_5_inner_inner_innerL255–255

Establish this local claim before using it. It is not an additional assumption.

  1. L255
    have length_bound_associative_representative_5_inner_inner_inner : Le(Lr,Lv + (Lr + Ls))Definitions: Le(Lr,Lv + (Lr + Ls))Original native command in the exact edition
68Establish length_bound_associative_representative_5_inner_inner_inner_innerL256–264

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

  1. L256
    have length_bound_associative_representative_5_inner_inner_inner_inner : Le(Lr,Lr + Ls)Definitions: Le(Lr,Lr + Ls)Original native command in the exact edition
  2. L257
    specialize le_add_right (Lr)
  3. L258
    specialize le_add_right (Ls)
  4. L259
    apply le_add_right
  5. L260
    specialize le_trans (Lr)
  6. L261
    specialize le_trans ((Lr)+(Ls))
  7. L262
    specialize le_trans ((Lv)+((Lr)+(Ls)))
  8. L263
    apply le_trans
  9. L264
    exact length_bound_associative_representative_5_inner_inner_inner_inner
69Construct an explicit witnessL265–265

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

  1. L265
    exists Lv
70Calculate and transport equalitiesL266–266

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

  1. L266
    refl
71Use earlier factsL267–271

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

  1. L267
    specialize le_trans (Lr)
  2. L268
    specialize le_trans ((Lv)+((Lr)+(Ls)))
  3. L269
    specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  4. L270
    apply le_trans
  5. L271
    exact length_bound_associative_representative_5_inner_inner_inner
72Construct an explicit witnessL272–272

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

  1. L272
    exists Lu
73Calculate and transport equalitiesL273–273

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

  1. L273
    refl
74Use earlier factsL274–278

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

  1. L274
    specialize le_trans (Lr)
  2. L275
    specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  3. L276
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  4. L277
    apply le_trans
  5. L278
    exact length_bound_associative_representative_5_inner_inner
75Construct an explicit witnessL279–279

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

  1. L279
    exists Lc
76Calculate and transport equalitiesL280–280

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

  1. L280
    refl
77Use earlier factsL281–285

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

  1. L281
    specialize le_trans (Lr)
  2. L282
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  3. L283
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  4. L284
    apply le_trans
  5. L285
    exact length_bound_associative_representative_5_inner
78Construct an explicit witnessL286–286

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

  1. L286
    exists Lb
79Calculate and transport equalitiesL287–287

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

  1. L287
    refl
80Use earlier factsL288–292

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

  1. L288
    specialize le_trans (Lr)
  2. L289
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  3. L290
    specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  4. L291
    apply le_trans
  5. L292
    exact length_bound_associative_representative_5
81Construct an explicit witnessL293–293

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

  1. L293
    exists La
82Calculate and transport equalitiesL294–294

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

  1. L294
    refl
83Separate the logical casesL295–297

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

  1. L295
    cases associative_representative_5
  2. L296
    cases associative_representative_5_witness
  3. L297
    cases associative_representative_5_witness_witness
84Establish associative_representative_6L298–306

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.

  1. L298
    have associative_representative_6 : ∃ associative_representative_6_code. ∃ associative_representative_6_scale. BetaPrefixInto(associative_representative_6_code,associative_representative_6_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p) ∧ PolynomialEquivalent(sb,sc,Ls,associative_representative_6_code,associative_representative_6_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: BetaPrefixInto(associative_representative_6_code,associative_representative_6_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(sb,sc,Ls,associative_representative_6_code,associative_representative_6_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L299
    specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  3. L300
    specialize prime_field_polynomial_bounded_representative_at_length_exists (sb)
  4. L301
    specialize prime_field_polynomial_bounded_representative_at_length_exists (sc)
  5. L302
    specialize prime_field_polynomial_bounded_representative_at_length_exists (Ls)
  6. L303
    specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  7. L304
    apply prime_field_polynomial_bounded_representative_at_length_exists
  8. L305
    exact hp
  9. L306
    exact hright_bounded_right_right
85Establish length_bound_associative_representative_6L307–307

Establish this local claim before using it. It is not an additional assumption.

  1. L307
    have length_bound_associative_representative_6 : Le(Ls,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Definitions: Le(Ls,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))Original native command in the exact edition
86Establish length_bound_associative_representative_6_innerL308–308

Establish this local claim before using it. It is not an additional assumption.

  1. L308
    have length_bound_associative_representative_6_inner : Le(Ls,Lc + (Lu + (Lv + (Lr + Ls))))Definitions: Le(Ls,Lc + (Lu + (Lv + (Lr + Ls))))Original native command in the exact edition
87Establish length_bound_associative_representative_6_inner_innerL309–309

Establish this local claim before using it. It is not an additional assumption.

  1. L309
    have length_bound_associative_representative_6_inner_inner : Le(Ls,Lu + (Lv + (Lr + Ls)))Definitions: Le(Ls,Lu + (Lv + (Lr + Ls)))Original native command in the exact edition
88Establish length_bound_associative_representative_6_inner_inner_innerL310–310

Establish this local claim before using it. It is not an additional assumption.

  1. L310
    have length_bound_associative_representative_6_inner_inner_inner : Le(Ls,Lv + (Lr + Ls))Definitions: Le(Ls,Lv + (Lr + Ls))Original native command in the exact edition
89Establish length_bound_associative_representative_6_inner_inner_inner_innerL311–311

Establish this local claim before using it. It is not an additional assumption.

  1. L311
    have length_bound_associative_representative_6_inner_inner_inner_inner : Le(Ls,Lr + Ls)Definitions: Le(Ls,Lr + Ls)Original native command in the exact edition
90Establish length_bound_associative_representative_6_inner_inner_inner_inner_innerL312–319

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

  1. L312
    have length_bound_associative_representative_6_inner_inner_inner_inner_inner : Le(Ls,Ls)Definitions: Le(Ls,Ls)Original native command in the exact edition
  2. L313
    specialize le_refl (Ls)
  3. L314
    apply le_refl
  4. L315
    specialize le_trans (Ls)
  5. L316
    specialize le_trans (Ls)
  6. L317
    specialize le_trans ((Lr)+(Ls))
  7. L318
    apply le_trans
  8. L319
    exact length_bound_associative_representative_6_inner_inner_inner_inner_inner
91Construct an explicit witnessL320–320

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

  1. L320
    exists Lr
92Calculate and transport equalitiesL321–321

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

  1. L321
    refl
93Use earlier factsL322–326

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

  1. L322
    specialize le_trans (Ls)
  2. L323
    specialize le_trans ((Lr)+(Ls))
  3. L324
    specialize le_trans ((Lv)+((Lr)+(Ls)))
  4. L325
    apply le_trans
  5. L326
    exact length_bound_associative_representative_6_inner_inner_inner_inner
94Construct an explicit witnessL327–327

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

  1. L327
    exists Lv
95Calculate and transport equalitiesL328–328

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

  1. L328
    refl
96Use earlier factsL329–333

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

  1. L329
    specialize le_trans (Ls)
  2. L330
    specialize le_trans ((Lv)+((Lr)+(Ls)))
  3. L331
    specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  4. L332
    apply le_trans
  5. L333
    exact length_bound_associative_representative_6_inner_inner_inner
97Construct an explicit witnessL334–334

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

  1. L334
    exists Lu
98Calculate and transport equalitiesL335–335

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

  1. L335
    refl
99Use earlier factsL336–340

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

  1. L336
    specialize le_trans (Ls)
  2. L337
    specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  3. L338
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  4. L339
    apply le_trans
  5. L340
    exact length_bound_associative_representative_6_inner_inner
100Construct an explicit witnessL341–341

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

  1. L341
    exists Lc
101Calculate and transport equalitiesL342–342

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

  1. L342
    refl
102Use earlier factsL343–347

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

  1. L343
    specialize le_trans (Ls)
  2. L344
    specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  3. L345
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  4. L346
    apply le_trans
  5. L347
    exact length_bound_associative_representative_6_inner
103Construct an explicit witnessL348–348

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

  1. L348
    exists Lb
104Calculate and transport equalitiesL349–349

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

  1. L349
    refl
105Use earlier factsL350–354

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

  1. L350
    specialize le_trans (Ls)
  2. L351
    specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  3. L352
    specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  4. L353
    apply le_trans
  5. L354
    exact length_bound_associative_representative_6
106Construct an explicit witnessL355–355

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

  1. L355
    exists La
107Calculate and transport equalitiesL356–356

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

  1. L356
    refl
108Separate the logical casesL357–359

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

  1. L357
    cases associative_representative_6
  2. L358
    cases associative_representative_6_witness
  3. L359
    cases associative_representative_6_witness_witness
109Establish hab_actualL360–369

Establish this local claim before using it. It is not an additional assumption.

  1. L360
    have hab_actual : FpPolyAdd(p,x,x1,x2,x3,x6,x7,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: FpPolyAdd(p,x,x1,x2,x3,x6,x7,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L361
    specialize prime_field_polynomial_aligned_add_realize (p)
  3. L362
    specialize prime_field_polynomial_aligned_add_realize (ab)
  4. L363
    specialize prime_field_polynomial_aligned_add_realize (ac)
  5. L364
    specialize prime_field_polynomial_aligned_add_realize (La)
  6. L365
    specialize prime_field_polynomial_aligned_add_realize (bb)
  7. L366
    specialize prime_field_polynomial_aligned_add_realize (bc)
  8. L367
    specialize prime_field_polynomial_aligned_add_realize (Lb)
  9. L368
    specialize prime_field_polynomial_aligned_add_realize (ub)
  10. L369
    specialize prime_field_polynomial_aligned_add_realize (uc)
110Use earlier factsL370–379

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

  1. L370
    specialize prime_field_polynomial_aligned_add_realize (Lu)
  2. L371
    specialize prime_field_polynomial_aligned_add_realize (x)
  3. L372
    specialize prime_field_polynomial_aligned_add_realize (x1)
  4. L373
    specialize prime_field_polynomial_aligned_add_realize (x2)
  5. L374
    specialize prime_field_polynomial_aligned_add_realize (x3)
  6. L375
    specialize prime_field_polynomial_aligned_add_realize (x6)
  7. L376
    specialize prime_field_polynomial_aligned_add_realize (x7)
  8. L377
    specialize prime_field_polynomial_aligned_add_realize ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  9. L378
    apply prime_field_polynomial_aligned_add_realize
  10. L379
    exact hp
111Use earlier factsL380–383

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

  1. L380
    exact hab
  2. L381
    exact associative_representative_0_witness_witness_left
  3. L382
    exact associative_representative_1_witness_witness_left
  4. L383
    exact associative_representative_3_witness_witness_left
112Separate the logical casesL384–384

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

  1. L384
    split
113Use earlier factsL385–387

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

  1. L385
    exact associative_representative_0_witness_witness_right
  2. L386
    exact associative_representative_1_witness_witness_right
  3. L387
    exact associative_representative_3_witness_witness_right
114Establish hleft_actualL388–397

Establish this local claim before using it. It is not an additional assumption.

  1. L388
    have hleft_actual : FpPolyAdd(p,x6,x7,x4,x5,x10,x11,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: FpPolyAdd(p,x6,x7,x4,x5,x10,x11,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L389
    specialize prime_field_polynomial_aligned_add_realize (p)
  3. L390
    specialize prime_field_polynomial_aligned_add_realize (ub)
  4. L391
    specialize prime_field_polynomial_aligned_add_realize (uc)
  5. L392
    specialize prime_field_polynomial_aligned_add_realize (Lu)
  6. L393
    specialize prime_field_polynomial_aligned_add_realize (cb)
  7. L394
    specialize prime_field_polynomial_aligned_add_realize (cc)
  8. L395
    specialize prime_field_polynomial_aligned_add_realize (Lc)
  9. L396
    specialize prime_field_polynomial_aligned_add_realize (rb)
  10. L397
    specialize prime_field_polynomial_aligned_add_realize (rc)
115Use earlier factsL398–407

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

  1. L398
    specialize prime_field_polynomial_aligned_add_realize (Lr)
  2. L399
    specialize prime_field_polynomial_aligned_add_realize (x6)
  3. L400
    specialize prime_field_polynomial_aligned_add_realize (x7)
  4. L401
    specialize prime_field_polynomial_aligned_add_realize (x4)
  5. L402
    specialize prime_field_polynomial_aligned_add_realize (x5)
  6. L403
    specialize prime_field_polynomial_aligned_add_realize (x10)
  7. L404
    specialize prime_field_polynomial_aligned_add_realize (x11)
  8. L405
    specialize prime_field_polynomial_aligned_add_realize ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  9. L406
    apply prime_field_polynomial_aligned_add_realize
  10. L407
    exact hp
116Use earlier factsL408–411

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

  1. L408
    exact hleft
  2. L409
    exact associative_representative_3_witness_witness_left
  3. L410
    exact associative_representative_2_witness_witness_left
  4. L411
    exact associative_representative_5_witness_witness_left
117Separate the logical casesL412–412

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

  1. L412
    split
118Use earlier factsL413–415

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

  1. L413
    exact associative_representative_3_witness_witness_right
  2. L414
    exact associative_representative_2_witness_witness_right
  3. L415
    exact associative_representative_5_witness_witness_right
119Establish hbc_actualL416–425

Establish this local claim before using it. It is not an additional assumption.

  1. L416
    have hbc_actual : FpPolyAdd(p,x2,x3,x4,x5,x8,x9,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: FpPolyAdd(p,x2,x3,x4,x5,x8,x9,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L417
    specialize prime_field_polynomial_aligned_add_realize (p)
  3. L418
    specialize prime_field_polynomial_aligned_add_realize (bb)
  4. L419
    specialize prime_field_polynomial_aligned_add_realize (bc)
  5. L420
    specialize prime_field_polynomial_aligned_add_realize (Lb)
  6. L421
    specialize prime_field_polynomial_aligned_add_realize (cb)
  7. L422
    specialize prime_field_polynomial_aligned_add_realize (cc)
  8. L423
    specialize prime_field_polynomial_aligned_add_realize (Lc)
  9. L424
    specialize prime_field_polynomial_aligned_add_realize (vb)
  10. L425
    specialize prime_field_polynomial_aligned_add_realize (vc)
120Use earlier factsL426–435

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

  1. L426
    specialize prime_field_polynomial_aligned_add_realize (Lv)
  2. L427
    specialize prime_field_polynomial_aligned_add_realize (x2)
  3. L428
    specialize prime_field_polynomial_aligned_add_realize (x3)
  4. L429
    specialize prime_field_polynomial_aligned_add_realize (x4)
  5. L430
    specialize prime_field_polynomial_aligned_add_realize (x5)
  6. L431
    specialize prime_field_polynomial_aligned_add_realize (x8)
  7. L432
    specialize prime_field_polynomial_aligned_add_realize (x9)
  8. L433
    specialize prime_field_polynomial_aligned_add_realize ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  9. L434
    apply prime_field_polynomial_aligned_add_realize
  10. L435
    exact hp
121Use earlier factsL436–439

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

  1. L436
    exact hbc
  2. L437
    exact associative_representative_1_witness_witness_left
  3. L438
    exact associative_representative_2_witness_witness_left
  4. L439
    exact associative_representative_4_witness_witness_left
122Separate the logical casesL440–440

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

  1. L440
    split
123Use earlier factsL441–443

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

  1. L441
    exact associative_representative_1_witness_witness_right
  2. L442
    exact associative_representative_2_witness_witness_right
  3. L443
    exact associative_representative_4_witness_witness_right
124Establish hright_actualL444–453

Establish this local claim before using it. It is not an additional assumption.

  1. L444
    have hright_actual : FpPolyAdd(p,x,x1,x8,x9,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: FpPolyAdd(p,x,x1,x8,x9,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L445
    specialize prime_field_polynomial_aligned_add_realize (p)
  3. L446
    specialize prime_field_polynomial_aligned_add_realize (ab)
  4. L447
    specialize prime_field_polynomial_aligned_add_realize (ac)
  5. L448
    specialize prime_field_polynomial_aligned_add_realize (La)
  6. L449
    specialize prime_field_polynomial_aligned_add_realize (vb)
  7. L450
    specialize prime_field_polynomial_aligned_add_realize (vc)
  8. L451
    specialize prime_field_polynomial_aligned_add_realize (Lv)
  9. L452
    specialize prime_field_polynomial_aligned_add_realize (sb)
  10. L453
    specialize prime_field_polynomial_aligned_add_realize (sc)
125Use earlier factsL454–463

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

  1. L454
    specialize prime_field_polynomial_aligned_add_realize (Ls)
  2. L455
    specialize prime_field_polynomial_aligned_add_realize (x)
  3. L456
    specialize prime_field_polynomial_aligned_add_realize (x1)
  4. L457
    specialize prime_field_polynomial_aligned_add_realize (x8)
  5. L458
    specialize prime_field_polynomial_aligned_add_realize (x9)
  6. L459
    specialize prime_field_polynomial_aligned_add_realize (x12)
  7. L460
    specialize prime_field_polynomial_aligned_add_realize (x13)
  8. L461
    specialize prime_field_polynomial_aligned_add_realize ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  9. L462
    apply prime_field_polynomial_aligned_add_realize
  10. L463
    exact hp
126Use earlier factsL464–467

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

  1. L464
    exact hright
  2. L465
    exact associative_representative_0_witness_witness_left
  3. L466
    exact associative_representative_4_witness_witness_left
  4. L467
    exact associative_representative_6_witness_witness_left
127Separate the logical casesL468–468

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

  1. L468
    split
128Use earlier factsL469–471

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

  1. L469
    exact associative_representative_0_witness_witness_right
  2. L470
    exact associative_representative_4_witness_witness_right
  3. L471
    exact associative_representative_6_witness_witness_right
129Establish heqL472–481

Establish this local claim before using it. It is not an additional assumption.

  1. L472
    have heq : BetaPrefixEqual(x10,x11,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: BetaPrefixEqual(x10,x11,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L473
    specialize prime_field_polynomial_add_associative (p)
  3. L474
    specialize prime_field_polynomial_add_associative (x)
  4. L475
    specialize prime_field_polynomial_add_associative (x1)
  5. L476
    specialize prime_field_polynomial_add_associative (x2)
  6. L477
    specialize prime_field_polynomial_add_associative (x3)
  7. L478
    specialize prime_field_polynomial_add_associative (x4)
  8. L479
    specialize prime_field_polynomial_add_associative (x5)
  9. L480
    specialize prime_field_polynomial_add_associative (x6)
  10. L481
    specialize prime_field_polynomial_add_associative (x7)
130Use earlier factsL482–491

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

  1. L482
    specialize prime_field_polynomial_add_associative (x8)
  2. L483
    specialize prime_field_polynomial_add_associative (x9)
  3. L484
    specialize prime_field_polynomial_add_associative (x10)
  4. L485
    specialize prime_field_polynomial_add_associative (x11)
  5. L486
    specialize prime_field_polynomial_add_associative (x12)
  6. L487
    specialize prime_field_polynomial_add_associative (x13)
  7. L488
    specialize prime_field_polynomial_add_associative ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  8. L489
    apply prime_field_polynomial_add_associative
  9. L490
    exact hab_actual
  10. L491
    exact hleft_actual
131Use earlier factsL492–493

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

  1. L492
    exact hbc_actual
  2. L493
    exact hright_actual
132Establish associative_middleL494–503

Establish this local claim before using it. It is not an additional assumption.

  1. L494
    have associative_middle : PolynomialEquivalent(rb,rc,Lr,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Definitions: PolynomialEquivalent(rb,rc,Lr,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))Original native command in the exact edition
  2. L495
    specialize prime_field_polynomial_equivalent_transitive (rb)
  3. L496
    specialize prime_field_polynomial_equivalent_transitive (rc)
  4. L497
    specialize prime_field_polynomial_equivalent_transitive (Lr)
  5. L498
    specialize prime_field_polynomial_equivalent_transitive (x10)
  6. L499
    specialize prime_field_polynomial_equivalent_transitive (x11)
  7. L500
    specialize prime_field_polynomial_equivalent_transitive ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  8. L501
    specialize prime_field_polynomial_equivalent_transitive (x12)
  9. L502
    specialize prime_field_polynomial_equivalent_transitive (x13)
  10. L503
    specialize prime_field_polynomial_equivalent_transitive ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
133Use earlier factsL504–513

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

  1. L504
    apply prime_field_polynomial_equivalent_transitive
  2. L505
    exact associative_representative_5_witness_witness_right
  3. L506
    specialize prime_field_polynomial_equal_implies_equivalent (x10)
  4. L507
    specialize prime_field_polynomial_equal_implies_equivalent (x11)
  5. L508
    specialize prime_field_polynomial_equal_implies_equivalent (x12)
  6. L509
    specialize prime_field_polynomial_equal_implies_equivalent (x13)
  7. L510
    specialize prime_field_polynomial_equal_implies_equivalent ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  8. L511
    apply prime_field_polynomial_equal_implies_equivalent
  9. L512
    exact heq
  10. L513
    specialize prime_field_polynomial_equivalent_transitive (rb)
134Use earlier factsL514–523

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

  1. L514
    specialize prime_field_polynomial_equivalent_transitive (rc)
  2. L515
    specialize prime_field_polynomial_equivalent_transitive (Lr)
  3. L516
    specialize prime_field_polynomial_equivalent_transitive (x12)
  4. L517
    specialize prime_field_polynomial_equivalent_transitive (x13)
  5. L518
    specialize prime_field_polynomial_equivalent_transitive ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  6. L519
    specialize prime_field_polynomial_equivalent_transitive (sb)
  7. L520
    specialize prime_field_polynomial_equivalent_transitive (sc)
  8. L521
    specialize prime_field_polynomial_equivalent_transitive (Ls)
  9. L522
    apply prime_field_polynomial_equivalent_transitive
  10. L523
    exact associative_middle
135Use earlier factsL524–531

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

  1. L524
    specialize prime_field_polynomial_equivalent_symmetric (sb)
  2. L525
    specialize prime_field_polynomial_equivalent_symmetric (sc)
  3. L526
    specialize prime_field_polynomial_equivalent_symmetric (Ls)
  4. L527
    specialize prime_field_polynomial_equivalent_symmetric (x12)
  5. L528
    specialize prime_field_polynomial_equivalent_symmetric (x13)
  6. L529
    specialize prime_field_polynomial_equivalent_symmetric ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  7. L530
    apply prime_field_polynomial_equivalent_symmetric
  8. L531
    exact associative_representative_6_witness_witness_right

Library-wide reading audit

Original defined command ledger · 531 lines
  1. 0001intro p
  2. 0002intro ab
  3. 0003intro ac
  4. 0004intro La
  5. 0005intro bb
  6. 0006intro bc
  7. 0007intro Lb
  8. 0008intro cb
  9. 0009intro cc
  10. 0010intro Lc
  11. 0011intro ub
  12. 0012intro uc
  13. 0013intro Lu
  14. 0014intro vb
  15. 0015intro vc
  16. 0016intro Lv
  17. 0017intro rb
  18. 0018intro rc
  19. 0019intro Lr
  20. 0020intro sb
  21. 0021intro sc
  22. 0022intro Ls
  23. 0023intro hp
  24. 0024intro hab
  25. 0025intro hleft
  26. 0026intro hbc
  27. 0027intro hright
  28. 0028have hab_bounded : BetaPrefixInto(ab,ac,La,p) ∧ (BetaPrefixInto(bb,bc,Lb,p)BetaPrefixInto(ub,uc,Lu,p))
  29. 0029specialize prime_field_polynomial_aligned_add_bounded (p)
  30. 0030specialize prime_field_polynomial_aligned_add_bounded (ab)
  31. 0031specialize prime_field_polynomial_aligned_add_bounded (ac)
  32. 0032specialize prime_field_polynomial_aligned_add_bounded (La)
  33. 0033specialize prime_field_polynomial_aligned_add_bounded (bb)
  34. 0034specialize prime_field_polynomial_aligned_add_bounded (bc)
  35. 0035specialize prime_field_polynomial_aligned_add_bounded (Lb)
  36. 0036specialize prime_field_polynomial_aligned_add_bounded (ub)
  37. 0037specialize prime_field_polynomial_aligned_add_bounded (uc)
  38. 0038specialize prime_field_polynomial_aligned_add_bounded (Lu)
  39. 0039apply prime_field_polynomial_aligned_add_bounded
  40. 0040exact hab
  41. 0041cases hab_bounded
  42. 0042cases hab_bounded_right
  43. 0043have hleft_bounded : BetaPrefixInto(ub,uc,Lu,p) ∧ (BetaPrefixInto(cb,cc,Lc,p)BetaPrefixInto(rb,rc,Lr,p))
  44. 0044specialize prime_field_polynomial_aligned_add_bounded (p)
  45. 0045specialize prime_field_polynomial_aligned_add_bounded (ub)
  46. 0046specialize prime_field_polynomial_aligned_add_bounded (uc)
  47. 0047specialize prime_field_polynomial_aligned_add_bounded (Lu)
  48. 0048specialize prime_field_polynomial_aligned_add_bounded (cb)
  49. 0049specialize prime_field_polynomial_aligned_add_bounded (cc)
  50. 0050specialize prime_field_polynomial_aligned_add_bounded (Lc)
  51. 0051specialize prime_field_polynomial_aligned_add_bounded (rb)
  52. 0052specialize prime_field_polynomial_aligned_add_bounded (rc)
  53. 0053specialize prime_field_polynomial_aligned_add_bounded (Lr)
  54. 0054apply prime_field_polynomial_aligned_add_bounded
  55. 0055exact hleft
  56. 0056cases hleft_bounded
  57. 0057cases hleft_bounded_right
  58. 0058have hbc_bounded : BetaPrefixInto(bb,bc,Lb,p) ∧ (BetaPrefixInto(cb,cc,Lc,p)BetaPrefixInto(vb,vc,Lv,p))
  59. 0059specialize prime_field_polynomial_aligned_add_bounded (p)
  60. 0060specialize prime_field_polynomial_aligned_add_bounded (bb)
  61. 0061specialize prime_field_polynomial_aligned_add_bounded (bc)
  62. 0062specialize prime_field_polynomial_aligned_add_bounded (Lb)
  63. 0063specialize prime_field_polynomial_aligned_add_bounded (cb)
  64. 0064specialize prime_field_polynomial_aligned_add_bounded (cc)
  65. 0065specialize prime_field_polynomial_aligned_add_bounded (Lc)
  66. 0066specialize prime_field_polynomial_aligned_add_bounded (vb)
  67. 0067specialize prime_field_polynomial_aligned_add_bounded (vc)
  68. 0068specialize prime_field_polynomial_aligned_add_bounded (Lv)
  69. 0069apply prime_field_polynomial_aligned_add_bounded
  70. 0070exact hbc
  71. 0071cases hbc_bounded
  72. 0072cases hbc_bounded_right
  73. 0073have hright_bounded : BetaPrefixInto(ab,ac,La,p) ∧ (BetaPrefixInto(vb,vc,Lv,p)BetaPrefixInto(sb,sc,Ls,p))
  74. 0074specialize prime_field_polynomial_aligned_add_bounded (p)
  75. 0075specialize prime_field_polynomial_aligned_add_bounded (ab)
  76. 0076specialize prime_field_polynomial_aligned_add_bounded (ac)
  77. 0077specialize prime_field_polynomial_aligned_add_bounded (La)
  78. 0078specialize prime_field_polynomial_aligned_add_bounded (vb)
  79. 0079specialize prime_field_polynomial_aligned_add_bounded (vc)
  80. 0080specialize prime_field_polynomial_aligned_add_bounded (Lv)
  81. 0081specialize prime_field_polynomial_aligned_add_bounded (sb)
  82. 0082specialize prime_field_polynomial_aligned_add_bounded (sc)
  83. 0083specialize prime_field_polynomial_aligned_add_bounded (Ls)
  84. 0084apply prime_field_polynomial_aligned_add_bounded
  85. 0085exact hright
  86. 0086cases hright_bounded
  87. 0087cases hright_bounded_right
  88. 0088have associative_representative_0 : ∃ associative_representative_0_code. ∃ associative_representative_0_scale. BetaPrefixInto(associative_representative_0_code,associative_representative_0_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(ab,ac,La,associative_representative_0_code,associative_representative_0_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  89. 0089specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  90. 0090specialize prime_field_polynomial_bounded_representative_at_length_exists (ab)
  91. 0091specialize prime_field_polynomial_bounded_representative_at_length_exists (ac)
  92. 0092specialize prime_field_polynomial_bounded_representative_at_length_exists (La)
  93. 0093specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  94. 0094apply prime_field_polynomial_bounded_representative_at_length_exists
  95. 0095exact hp
  96. 0096exact hab_bounded_left
  97. 0097specialize le_add_right (La)
  98. 0098specialize le_add_right ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  99. 0099apply le_add_right
  100. 0100cases associative_representative_0
  101. 0101cases associative_representative_0_witness
  102. 0102cases associative_representative_0_witness_witness
  103. 0103have associative_representative_1 : ∃ associative_representative_1_code. ∃ associative_representative_1_scale. BetaPrefixInto(associative_representative_1_code,associative_representative_1_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(bb,bc,Lb,associative_representative_1_code,associative_representative_1_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  104. 0104specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  105. 0105specialize prime_field_polynomial_bounded_representative_at_length_exists (bb)
  106. 0106specialize prime_field_polynomial_bounded_representative_at_length_exists (bc)
  107. 0107specialize prime_field_polynomial_bounded_representative_at_length_exists (Lb)
  108. 0108specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  109. 0109apply prime_field_polynomial_bounded_representative_at_length_exists
  110. 0110exact hp
  111. 0111exact hab_bounded_right_left
  112. 0112have length_bound_associative_representative_1 : Le(Lb,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))
  113. 0113specialize le_add_right (Lb)
  114. 0114specialize le_add_right ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  115. 0115apply le_add_right
  116. 0116specialize le_trans (Lb)
  117. 0117specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  118. 0118specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  119. 0119apply le_trans
  120. 0120exact length_bound_associative_representative_1
  121. 0121exists La
  122. 0122refl
  123. 0123cases associative_representative_1
  124. 0124cases associative_representative_1_witness
  125. 0125cases associative_representative_1_witness_witness
  126. 0126have associative_representative_2 : ∃ associative_representative_2_code. ∃ associative_representative_2_scale. BetaPrefixInto(associative_representative_2_code,associative_representative_2_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(cb,cc,Lc,associative_representative_2_code,associative_representative_2_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  127. 0127specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  128. 0128specialize prime_field_polynomial_bounded_representative_at_length_exists (cb)
  129. 0129specialize prime_field_polynomial_bounded_representative_at_length_exists (cc)
  130. 0130specialize prime_field_polynomial_bounded_representative_at_length_exists (Lc)
  131. 0131specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  132. 0132apply prime_field_polynomial_bounded_representative_at_length_exists
  133. 0133exact hp
  134. 0134exact hbc_bounded_right_left
  135. 0135have length_bound_associative_representative_2 : Le(Lc,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))
  136. 0136have length_bound_associative_representative_2_inner : Le(Lc,Lc + (Lu + (Lv + (Lr + Ls))))
  137. 0137specialize le_add_right (Lc)
  138. 0138specialize le_add_right ((Lu)+((Lv)+((Lr)+(Ls))))
  139. 0139apply le_add_right
  140. 0140specialize le_trans (Lc)
  141. 0141specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  142. 0142specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  143. 0143apply le_trans
  144. 0144exact length_bound_associative_representative_2_inner
  145. 0145exists Lb
  146. 0146refl
  147. 0147specialize le_trans (Lc)
  148. 0148specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  149. 0149specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  150. 0150apply le_trans
  151. 0151exact length_bound_associative_representative_2
  152. 0152exists La
  153. 0153refl
  154. 0154cases associative_representative_2
  155. 0155cases associative_representative_2_witness
  156. 0156cases associative_representative_2_witness_witness
  157. 0157have associative_representative_3 : ∃ associative_representative_3_code. ∃ associative_representative_3_scale. BetaPrefixInto(associative_representative_3_code,associative_representative_3_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(ub,uc,Lu,associative_representative_3_code,associative_representative_3_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  158. 0158specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  159. 0159specialize prime_field_polynomial_bounded_representative_at_length_exists (ub)
  160. 0160specialize prime_field_polynomial_bounded_representative_at_length_exists (uc)
  161. 0161specialize prime_field_polynomial_bounded_representative_at_length_exists (Lu)
  162. 0162specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  163. 0163apply prime_field_polynomial_bounded_representative_at_length_exists
  164. 0164exact hp
  165. 0165exact hab_bounded_right_right
  166. 0166have length_bound_associative_representative_3 : Le(Lu,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))
  167. 0167have length_bound_associative_representative_3_inner : Le(Lu,Lc + (Lu + (Lv + (Lr + Ls))))
  168. 0168have length_bound_associative_representative_3_inner_inner : Le(Lu,Lu + (Lv + (Lr + Ls)))
  169. 0169specialize le_add_right (Lu)
  170. 0170specialize le_add_right ((Lv)+((Lr)+(Ls)))
  171. 0171apply le_add_right
  172. 0172specialize le_trans (Lu)
  173. 0173specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  174. 0174specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  175. 0175apply le_trans
  176. 0176exact length_bound_associative_representative_3_inner_inner
  177. 0177exists Lc
  178. 0178refl
  179. 0179specialize le_trans (Lu)
  180. 0180specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  181. 0181specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  182. 0182apply le_trans
  183. 0183exact length_bound_associative_representative_3_inner
  184. 0184exists Lb
  185. 0185refl
  186. 0186specialize le_trans (Lu)
  187. 0187specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  188. 0188specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  189. 0189apply le_trans
  190. 0190exact length_bound_associative_representative_3
  191. 0191exists La
  192. 0192refl
  193. 0193cases associative_representative_3
  194. 0194cases associative_representative_3_witness
  195. 0195cases associative_representative_3_witness_witness
  196. 0196have associative_representative_4 : ∃ associative_representative_4_code. ∃ associative_representative_4_scale. BetaPrefixInto(associative_representative_4_code,associative_representative_4_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(vb,vc,Lv,associative_representative_4_code,associative_representative_4_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  197. 0197specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  198. 0198specialize prime_field_polynomial_bounded_representative_at_length_exists (vb)
  199. 0199specialize prime_field_polynomial_bounded_representative_at_length_exists (vc)
  200. 0200specialize prime_field_polynomial_bounded_representative_at_length_exists (Lv)
  201. 0201specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  202. 0202apply prime_field_polynomial_bounded_representative_at_length_exists
  203. 0203exact hp
  204. 0204exact hbc_bounded_right_right
  205. 0205have length_bound_associative_representative_4 : Le(Lv,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))
  206. 0206have length_bound_associative_representative_4_inner : Le(Lv,Lc + (Lu + (Lv + (Lr + Ls))))
  207. 0207have length_bound_associative_representative_4_inner_inner : Le(Lv,Lu + (Lv + (Lr + Ls)))
  208. 0208have length_bound_associative_representative_4_inner_inner_inner : Le(Lv,Lv + (Lr + Ls))
  209. 0209specialize le_add_right (Lv)
  210. 0210specialize le_add_right ((Lr)+(Ls))
  211. 0211apply le_add_right
  212. 0212specialize le_trans (Lv)
  213. 0213specialize le_trans ((Lv)+((Lr)+(Ls)))
  214. 0214specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  215. 0215apply le_trans
  216. 0216exact length_bound_associative_representative_4_inner_inner_inner
  217. 0217exists Lu
  218. 0218refl
  219. 0219specialize le_trans (Lv)
  220. 0220specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  221. 0221specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  222. 0222apply le_trans
  223. 0223exact length_bound_associative_representative_4_inner_inner
  224. 0224exists Lc
  225. 0225refl
  226. 0226specialize le_trans (Lv)
  227. 0227specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  228. 0228specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  229. 0229apply le_trans
  230. 0230exact length_bound_associative_representative_4_inner
  231. 0231exists Lb
  232. 0232refl
  233. 0233specialize le_trans (Lv)
  234. 0234specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  235. 0235specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  236. 0236apply le_trans
  237. 0237exact length_bound_associative_representative_4
  238. 0238exists La
  239. 0239refl
  240. 0240cases associative_representative_4
  241. 0241cases associative_representative_4_witness
  242. 0242cases associative_representative_4_witness_witness
  243. 0243have associative_representative_5 : ∃ associative_representative_5_code. ∃ associative_representative_5_scale. BetaPrefixInto(associative_representative_5_code,associative_representative_5_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(rb,rc,Lr,associative_representative_5_code,associative_representative_5_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  244. 0244specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  245. 0245specialize prime_field_polynomial_bounded_representative_at_length_exists (rb)
  246. 0246specialize prime_field_polynomial_bounded_representative_at_length_exists (rc)
  247. 0247specialize prime_field_polynomial_bounded_representative_at_length_exists (Lr)
  248. 0248specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  249. 0249apply prime_field_polynomial_bounded_representative_at_length_exists
  250. 0250exact hp
  251. 0251exact hleft_bounded_right_right
  252. 0252have length_bound_associative_representative_5 : Le(Lr,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))
  253. 0253have length_bound_associative_representative_5_inner : Le(Lr,Lc + (Lu + (Lv + (Lr + Ls))))
  254. 0254have length_bound_associative_representative_5_inner_inner : Le(Lr,Lu + (Lv + (Lr + Ls)))
  255. 0255have length_bound_associative_representative_5_inner_inner_inner : Le(Lr,Lv + (Lr + Ls))
  256. 0256have length_bound_associative_representative_5_inner_inner_inner_inner : Le(Lr,Lr + Ls)
  257. 0257specialize le_add_right (Lr)
  258. 0258specialize le_add_right (Ls)
  259. 0259apply le_add_right
  260. 0260specialize le_trans (Lr)
  261. 0261specialize le_trans ((Lr)+(Ls))
  262. 0262specialize le_trans ((Lv)+((Lr)+(Ls)))
  263. 0263apply le_trans
  264. 0264exact length_bound_associative_representative_5_inner_inner_inner_inner
  265. 0265exists Lv
  266. 0266refl
  267. 0267specialize le_trans (Lr)
  268. 0268specialize le_trans ((Lv)+((Lr)+(Ls)))
  269. 0269specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  270. 0270apply le_trans
  271. 0271exact length_bound_associative_representative_5_inner_inner_inner
  272. 0272exists Lu
  273. 0273refl
  274. 0274specialize le_trans (Lr)
  275. 0275specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  276. 0276specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  277. 0277apply le_trans
  278. 0278exact length_bound_associative_representative_5_inner_inner
  279. 0279exists Lc
  280. 0280refl
  281. 0281specialize le_trans (Lr)
  282. 0282specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  283. 0283specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  284. 0284apply le_trans
  285. 0285exact length_bound_associative_representative_5_inner
  286. 0286exists Lb
  287. 0287refl
  288. 0288specialize le_trans (Lr)
  289. 0289specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  290. 0290specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  291. 0291apply le_trans
  292. 0292exact length_bound_associative_representative_5
  293. 0293exists La
  294. 0294refl
  295. 0295cases associative_representative_5
  296. 0296cases associative_representative_5_witness
  297. 0297cases associative_representative_5_witness_witness
  298. 0298have associative_representative_6 : ∃ associative_representative_6_code. ∃ associative_representative_6_scale. BetaPrefixInto(associative_representative_6_code,associative_representative_6_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))),p)PolynomialEquivalent(sb,sc,Ls,associative_representative_6_code,associative_representative_6_scale,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  299. 0299specialize prime_field_polynomial_bounded_representative_at_length_exists (p)
  300. 0300specialize prime_field_polynomial_bounded_representative_at_length_exists (sb)
  301. 0301specialize prime_field_polynomial_bounded_representative_at_length_exists (sc)
  302. 0302specialize prime_field_polynomial_bounded_representative_at_length_exists (Ls)
  303. 0303specialize prime_field_polynomial_bounded_representative_at_length_exists ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  304. 0304apply prime_field_polynomial_bounded_representative_at_length_exists
  305. 0305exact hp
  306. 0306exact hright_bounded_right_right
  307. 0307have length_bound_associative_representative_6 : Le(Ls,Lb + (Lc + (Lu + (Lv + (Lr + Ls)))))
  308. 0308have length_bound_associative_representative_6_inner : Le(Ls,Lc + (Lu + (Lv + (Lr + Ls))))
  309. 0309have length_bound_associative_representative_6_inner_inner : Le(Ls,Lu + (Lv + (Lr + Ls)))
  310. 0310have length_bound_associative_representative_6_inner_inner_inner : Le(Ls,Lv + (Lr + Ls))
  311. 0311have length_bound_associative_representative_6_inner_inner_inner_inner : Le(Ls,Lr + Ls)
  312. 0312have length_bound_associative_representative_6_inner_inner_inner_inner_inner : Le(Ls,Ls)
  313. 0313specialize le_refl (Ls)
  314. 0314apply le_refl
  315. 0315specialize le_trans (Ls)
  316. 0316specialize le_trans (Ls)
  317. 0317specialize le_trans ((Lr)+(Ls))
  318. 0318apply le_trans
  319. 0319exact length_bound_associative_representative_6_inner_inner_inner_inner_inner
  320. 0320exists Lr
  321. 0321refl
  322. 0322specialize le_trans (Ls)
  323. 0323specialize le_trans ((Lr)+(Ls))
  324. 0324specialize le_trans ((Lv)+((Lr)+(Ls)))
  325. 0325apply le_trans
  326. 0326exact length_bound_associative_representative_6_inner_inner_inner_inner
  327. 0327exists Lv
  328. 0328refl
  329. 0329specialize le_trans (Ls)
  330. 0330specialize le_trans ((Lv)+((Lr)+(Ls)))
  331. 0331specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  332. 0332apply le_trans
  333. 0333exact length_bound_associative_representative_6_inner_inner_inner
  334. 0334exists Lu
  335. 0335refl
  336. 0336specialize le_trans (Ls)
  337. 0337specialize le_trans ((Lu)+((Lv)+((Lr)+(Ls))))
  338. 0338specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  339. 0339apply le_trans
  340. 0340exact length_bound_associative_representative_6_inner_inner
  341. 0341exists Lc
  342. 0342refl
  343. 0343specialize le_trans (Ls)
  344. 0344specialize le_trans ((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))
  345. 0345specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  346. 0346apply le_trans
  347. 0347exact length_bound_associative_representative_6_inner
  348. 0348exists Lb
  349. 0349refl
  350. 0350specialize le_trans (Ls)
  351. 0351specialize le_trans ((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls))))))
  352. 0352specialize le_trans ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  353. 0353apply le_trans
  354. 0354exact length_bound_associative_representative_6
  355. 0355exists La
  356. 0356refl
  357. 0357cases associative_representative_6
  358. 0358cases associative_representative_6_witness
  359. 0359cases associative_representative_6_witness_witness
  360. 0360have hab_actual : FpPolyAdd(p,x,x1,x2,x3,x6,x7,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  361. 0361specialize prime_field_polynomial_aligned_add_realize (p)
  362. 0362specialize prime_field_polynomial_aligned_add_realize (ab)
  363. 0363specialize prime_field_polynomial_aligned_add_realize (ac)
  364. 0364specialize prime_field_polynomial_aligned_add_realize (La)
  365. 0365specialize prime_field_polynomial_aligned_add_realize (bb)
  366. 0366specialize prime_field_polynomial_aligned_add_realize (bc)
  367. 0367specialize prime_field_polynomial_aligned_add_realize (Lb)
  368. 0368specialize prime_field_polynomial_aligned_add_realize (ub)
  369. 0369specialize prime_field_polynomial_aligned_add_realize (uc)
  370. 0370specialize prime_field_polynomial_aligned_add_realize (Lu)
  371. 0371specialize prime_field_polynomial_aligned_add_realize (x)
  372. 0372specialize prime_field_polynomial_aligned_add_realize (x1)
  373. 0373specialize prime_field_polynomial_aligned_add_realize (x2)
  374. 0374specialize prime_field_polynomial_aligned_add_realize (x3)
  375. 0375specialize prime_field_polynomial_aligned_add_realize (x6)
  376. 0376specialize prime_field_polynomial_aligned_add_realize (x7)
  377. 0377specialize prime_field_polynomial_aligned_add_realize ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  378. 0378apply prime_field_polynomial_aligned_add_realize
  379. 0379exact hp
  380. 0380exact hab
  381. 0381exact associative_representative_0_witness_witness_left
  382. 0382exact associative_representative_1_witness_witness_left
  383. 0383exact associative_representative_3_witness_witness_left
  384. 0384split
  385. 0385exact associative_representative_0_witness_witness_right
  386. 0386exact associative_representative_1_witness_witness_right
  387. 0387exact associative_representative_3_witness_witness_right
  388. 0388have hleft_actual : FpPolyAdd(p,x6,x7,x4,x5,x10,x11,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  389. 0389specialize prime_field_polynomial_aligned_add_realize (p)
  390. 0390specialize prime_field_polynomial_aligned_add_realize (ub)
  391. 0391specialize prime_field_polynomial_aligned_add_realize (uc)
  392. 0392specialize prime_field_polynomial_aligned_add_realize (Lu)
  393. 0393specialize prime_field_polynomial_aligned_add_realize (cb)
  394. 0394specialize prime_field_polynomial_aligned_add_realize (cc)
  395. 0395specialize prime_field_polynomial_aligned_add_realize (Lc)
  396. 0396specialize prime_field_polynomial_aligned_add_realize (rb)
  397. 0397specialize prime_field_polynomial_aligned_add_realize (rc)
  398. 0398specialize prime_field_polynomial_aligned_add_realize (Lr)
  399. 0399specialize prime_field_polynomial_aligned_add_realize (x6)
  400. 0400specialize prime_field_polynomial_aligned_add_realize (x7)
  401. 0401specialize prime_field_polynomial_aligned_add_realize (x4)
  402. 0402specialize prime_field_polynomial_aligned_add_realize (x5)
  403. 0403specialize prime_field_polynomial_aligned_add_realize (x10)
  404. 0404specialize prime_field_polynomial_aligned_add_realize (x11)
  405. 0405specialize prime_field_polynomial_aligned_add_realize ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  406. 0406apply prime_field_polynomial_aligned_add_realize
  407. 0407exact hp
  408. 0408exact hleft
  409. 0409exact associative_representative_3_witness_witness_left
  410. 0410exact associative_representative_2_witness_witness_left
  411. 0411exact associative_representative_5_witness_witness_left
  412. 0412split
  413. 0413exact associative_representative_3_witness_witness_right
  414. 0414exact associative_representative_2_witness_witness_right
  415. 0415exact associative_representative_5_witness_witness_right
  416. 0416have hbc_actual : FpPolyAdd(p,x2,x3,x4,x5,x8,x9,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  417. 0417specialize prime_field_polynomial_aligned_add_realize (p)
  418. 0418specialize prime_field_polynomial_aligned_add_realize (bb)
  419. 0419specialize prime_field_polynomial_aligned_add_realize (bc)
  420. 0420specialize prime_field_polynomial_aligned_add_realize (Lb)
  421. 0421specialize prime_field_polynomial_aligned_add_realize (cb)
  422. 0422specialize prime_field_polynomial_aligned_add_realize (cc)
  423. 0423specialize prime_field_polynomial_aligned_add_realize (Lc)
  424. 0424specialize prime_field_polynomial_aligned_add_realize (vb)
  425. 0425specialize prime_field_polynomial_aligned_add_realize (vc)
  426. 0426specialize prime_field_polynomial_aligned_add_realize (Lv)
  427. 0427specialize prime_field_polynomial_aligned_add_realize (x2)
  428. 0428specialize prime_field_polynomial_aligned_add_realize (x3)
  429. 0429specialize prime_field_polynomial_aligned_add_realize (x4)
  430. 0430specialize prime_field_polynomial_aligned_add_realize (x5)
  431. 0431specialize prime_field_polynomial_aligned_add_realize (x8)
  432. 0432specialize prime_field_polynomial_aligned_add_realize (x9)
  433. 0433specialize prime_field_polynomial_aligned_add_realize ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  434. 0434apply prime_field_polynomial_aligned_add_realize
  435. 0435exact hp
  436. 0436exact hbc
  437. 0437exact associative_representative_1_witness_witness_left
  438. 0438exact associative_representative_2_witness_witness_left
  439. 0439exact associative_representative_4_witness_witness_left
  440. 0440split
  441. 0441exact associative_representative_1_witness_witness_right
  442. 0442exact associative_representative_2_witness_witness_right
  443. 0443exact associative_representative_4_witness_witness_right
  444. 0444have hright_actual : FpPolyAdd(p,x,x1,x8,x9,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  445. 0445specialize prime_field_polynomial_aligned_add_realize (p)
  446. 0446specialize prime_field_polynomial_aligned_add_realize (ab)
  447. 0447specialize prime_field_polynomial_aligned_add_realize (ac)
  448. 0448specialize prime_field_polynomial_aligned_add_realize (La)
  449. 0449specialize prime_field_polynomial_aligned_add_realize (vb)
  450. 0450specialize prime_field_polynomial_aligned_add_realize (vc)
  451. 0451specialize prime_field_polynomial_aligned_add_realize (Lv)
  452. 0452specialize prime_field_polynomial_aligned_add_realize (sb)
  453. 0453specialize prime_field_polynomial_aligned_add_realize (sc)
  454. 0454specialize prime_field_polynomial_aligned_add_realize (Ls)
  455. 0455specialize prime_field_polynomial_aligned_add_realize (x)
  456. 0456specialize prime_field_polynomial_aligned_add_realize (x1)
  457. 0457specialize prime_field_polynomial_aligned_add_realize (x8)
  458. 0458specialize prime_field_polynomial_aligned_add_realize (x9)
  459. 0459specialize prime_field_polynomial_aligned_add_realize (x12)
  460. 0460specialize prime_field_polynomial_aligned_add_realize (x13)
  461. 0461specialize prime_field_polynomial_aligned_add_realize ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  462. 0462apply prime_field_polynomial_aligned_add_realize
  463. 0463exact hp
  464. 0464exact hright
  465. 0465exact associative_representative_0_witness_witness_left
  466. 0466exact associative_representative_4_witness_witness_left
  467. 0467exact associative_representative_6_witness_witness_left
  468. 0468split
  469. 0469exact associative_representative_0_witness_witness_right
  470. 0470exact associative_representative_4_witness_witness_right
  471. 0471exact associative_representative_6_witness_witness_right
  472. 0472have heq : BetaPrefixEqual(x10,x11,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  473. 0473specialize prime_field_polynomial_add_associative (p)
  474. 0474specialize prime_field_polynomial_add_associative (x)
  475. 0475specialize prime_field_polynomial_add_associative (x1)
  476. 0476specialize prime_field_polynomial_add_associative (x2)
  477. 0477specialize prime_field_polynomial_add_associative (x3)
  478. 0478specialize prime_field_polynomial_add_associative (x4)
  479. 0479specialize prime_field_polynomial_add_associative (x5)
  480. 0480specialize prime_field_polynomial_add_associative (x6)
  481. 0481specialize prime_field_polynomial_add_associative (x7)
  482. 0482specialize prime_field_polynomial_add_associative (x8)
  483. 0483specialize prime_field_polynomial_add_associative (x9)
  484. 0484specialize prime_field_polynomial_add_associative (x10)
  485. 0485specialize prime_field_polynomial_add_associative (x11)
  486. 0486specialize prime_field_polynomial_add_associative (x12)
  487. 0487specialize prime_field_polynomial_add_associative (x13)
  488. 0488specialize prime_field_polynomial_add_associative ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  489. 0489apply prime_field_polynomial_add_associative
  490. 0490exact hab_actual
  491. 0491exact hleft_actual
  492. 0492exact hbc_actual
  493. 0493exact hright_actual
  494. 0494have associative_middle : PolynomialEquivalent(rb,rc,Lr,x12,x13,La + (Lb + (Lc + (Lu + (Lv + (Lr + Ls))))))
  495. 0495specialize prime_field_polynomial_equivalent_transitive (rb)
  496. 0496specialize prime_field_polynomial_equivalent_transitive (rc)
  497. 0497specialize prime_field_polynomial_equivalent_transitive (Lr)
  498. 0498specialize prime_field_polynomial_equivalent_transitive (x10)
  499. 0499specialize prime_field_polynomial_equivalent_transitive (x11)
  500. 0500specialize prime_field_polynomial_equivalent_transitive ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  501. 0501specialize prime_field_polynomial_equivalent_transitive (x12)
  502. 0502specialize prime_field_polynomial_equivalent_transitive (x13)
  503. 0503specialize prime_field_polynomial_equivalent_transitive ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  504. 0504apply prime_field_polynomial_equivalent_transitive
  505. 0505exact associative_representative_5_witness_witness_right
  506. 0506specialize prime_field_polynomial_equal_implies_equivalent (x10)
  507. 0507specialize prime_field_polynomial_equal_implies_equivalent (x11)
  508. 0508specialize prime_field_polynomial_equal_implies_equivalent (x12)
  509. 0509specialize prime_field_polynomial_equal_implies_equivalent (x13)
  510. 0510specialize prime_field_polynomial_equal_implies_equivalent ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  511. 0511apply prime_field_polynomial_equal_implies_equivalent
  512. 0512exact heq
  513. 0513specialize prime_field_polynomial_equivalent_transitive (rb)
  514. 0514specialize prime_field_polynomial_equivalent_transitive (rc)
  515. 0515specialize prime_field_polynomial_equivalent_transitive (Lr)
  516. 0516specialize prime_field_polynomial_equivalent_transitive (x12)
  517. 0517specialize prime_field_polynomial_equivalent_transitive (x13)
  518. 0518specialize prime_field_polynomial_equivalent_transitive ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  519. 0519specialize prime_field_polynomial_equivalent_transitive (sb)
  520. 0520specialize prime_field_polynomial_equivalent_transitive (sc)
  521. 0521specialize prime_field_polynomial_equivalent_transitive (Ls)
  522. 0522apply prime_field_polynomial_equivalent_transitive
  523. 0523exact associative_middle
  524. 0524specialize prime_field_polynomial_equivalent_symmetric (sb)
  525. 0525specialize prime_field_polynomial_equivalent_symmetric (sc)
  526. 0526specialize prime_field_polynomial_equivalent_symmetric (Ls)
  527. 0527specialize prime_field_polynomial_equivalent_symmetric (x12)
  528. 0528specialize prime_field_polynomial_equivalent_symmetric (x13)
  529. 0529specialize prime_field_polynomial_equivalent_symmetric ((La)+((Lb)+((Lc)+((Lu)+((Lv)+((Lr)+(Ls)))))))
  530. 0530apply prime_field_polynomial_equivalent_symmetric
  531. 0531exact associative_representative_6_witness_witness_right