Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Exact expanded first-order arithmetic statement
forall p ab ac L bb bc M cb cc N AB AC t CB CC K. (~(p=0)) -> (~(L=0)) -> (~(M=0)) -> (((forall pfp_repeat_index_nonempty_factor_padding_leftzeros. (exists pfa_gap_nonempty_factor_padding_leftzerosindex. pfa_gap_nonempty_factor_padding_leftzerosindex + S (pfp_repeat_index_nonempty_factor_padding_leftzeros) = (t)) -> (((exists ff_h_pfp_nonempty_factor_padding_leftzerosentry. ff_h_pfp_nonempty_factor_padding_leftzerosentry + S (0) = S ((S (pfp_repeat_index_nonempty_factor_padding_leftzeros)) * AC)) /\ exists ff_q_pfp_nonempty_factor_padding_leftzerosentry. AB = ff_q_pfp_nonempty_factor_padding_leftzerosentry * S ((S (pfp_repeat_index_nonempty_factor_padding_leftzeros)) * AC) + (0)))) /\ ((forall pfrep_index_nonempty_factor_padding_left pfrep_value_nonempty_factor_padding_left. (exists pfa_gap_nonempty_factor_padding_leftbound. pfa_gap_nonempty_factor_padding_leftbound + S (pfrep_index_nonempty_factor_padding_left) = (L)) -> (((exists ff_h_pfp_nonempty_factor_padding_leftinput. ff_h_pfp_nonempty_factor_padding_leftinput + S (pfrep_value_nonempty_factor_padding_left) = S ((S (pfrep_index_nonempty_factor_padding_left)) * ac)) /\ exists ff_q_pfp_nonempty_factor_padding_leftinput. ab = ff_q_pfp_nonempty_factor_padding_leftinput * S ((S (pfrep_index_nonempty_factor_padding_left)) * ac) + (pfrep_value_nonempty_factor_padding_left))) -> (((exists ff_h_pfp_nonempty_factor_padding_leftoutput. ff_h_pfp_nonempty_factor_padding_leftoutput + S (pfrep_value_nonempty_factor_padding_left) = S ((S ((t)+pfrep_index_nonempty_factor_padding_left)) * AC)) /\ exists ff_q_pfp_nonempty_factor_padding_leftoutput. AB = ff_q_pfp_nonempty_factor_padding_leftoutput * S ((S ((t)+pfrep_index_nonempty_factor_padding_left)) * AC) + (pfrep_value_nonempty_factor_padding_left))))))) -> (((forall fom_index_pfp_nonempty_old_leftleft. (exists fom_gap_pfp_nonempty_old_leftleft_index_bound. fom_gap_pfp_nonempty_old_leftleft_index_bound + S (fom_index_pfp_nonempty_old_leftleft) = L) -> exists fom_value_pfp_nonempty_old_leftleft. ((((exists fom_beta_height_pfp_nonempty_old_leftleft_entry. fom_beta_height_pfp_nonempty_old_leftleft_entry + S (fom_value_pfp_nonempty_old_leftleft) = S ((S (fom_index_pfp_nonempty_old_leftleft)) * ac)) /\ exists fom_beta_quotient_pfp_nonempty_old_leftleft_entry. ab = fom_beta_quotient_pfp_nonempty_old_leftleft_entry * S ((S (fom_index_pfp_nonempty_old_leftleft)) * ac) + (fom_value_pfp_nonempty_old_leftleft))) /\ (exists fom_gap_pfp_nonempty_old_leftleft_value_bound. fom_gap_pfp_nonempty_old_leftleft_value_bound + S (fom_value_pfp_nonempty_old_leftleft) = p))) /\ (((forall fom_index_pfp_nonempty_old_leftright. (exists fom_gap_pfp_nonempty_old_leftright_index_bound. fom_gap_pfp_nonempty_old_leftright_index_bound + S (fom_index_pfp_nonempty_old_leftright) = M) -> exists fom_value_pfp_nonempty_old_leftright. ((((exists fom_beta_height_pfp_nonempty_old_leftright_entry. fom_beta_height_pfp_nonempty_old_leftright_entry + S (fom_value_pfp_nonempty_old_leftright) = S ((S (fom_index_pfp_nonempty_old_leftright)) * bc)) /\ exists fom_beta_quotient_pfp_nonempty_old_leftright_entry. bb = fom_beta_quotient_pfp_nonempty_old_leftright_entry * S ((S (fom_index_pfp_nonempty_old_leftright)) * bc) + (fom_value_pfp_nonempty_old_leftright))) /\ (exists fom_gap_pfp_nonempty_old_leftright_value_bound. fom_gap_pfp_nonempty_old_leftright_value_bound + S (fom_value_pfp_nonempty_old_leftright) = p))) /\ (((((((L)=0 \/ (M)=0) /\ (((N)=0)))) \/ (((~((L)=0)) /\ (((~((M)=0)) /\ (((L)+(M)=S (N)))))))) /\ ((forall pfc_index_nonempty_old_leftcoefficients. (exists pfa_gap_nonempty_old_leftcoefficientsbound. pfa_gap_nonempty_old_leftcoefficientsbound + S (pfc_index_nonempty_old_leftcoefficients) = (N)) -> exists pfc_value_nonempty_old_leftcoefficients. ((((exists ff_h_pfp_nonempty_old_leftcoefficientsentry. ff_h_pfp_nonempty_old_leftcoefficientsentry + S (pfc_value_nonempty_old_leftcoefficients) = S ((S (pfc_index_nonempty_old_leftcoefficients)) * cc)) /\ exists ff_q_pfp_nonempty_old_leftcoefficientsentry. cb = ff_q_pfp_nonempty_old_leftcoefficientsentry * S ((S (pfc_index_nonempty_old_leftcoefficients)) * cc) + (pfc_value_nonempty_old_leftcoefficients))) /\ ((exists pfc_terms_code_nonempty_old_leftcoefficientscoefficient pfc_terms_scale_nonempty_old_leftcoefficientscoefficient pfc_natural_sum_nonempty_old_leftcoefficientscoefficient. ((forall pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal. (exists pfa_gap_nonempty_old_leftcoefficientscoefficientdiagonalbound. pfa_gap_nonempty_old_leftcoefficientscoefficientdiagonalbound + S (pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal) = (S (pfc_index_nonempty_old_leftcoefficients))) -> exists pfc_value_nonempty_old_leftcoefficientscoefficientdiagonal. ((((exists ff_h_pfp_nonempty_old_leftcoefficientscoefficientdiagonalentry. ff_h_pfp_nonempty_old_leftcoefficientscoefficientdiagonalentry + S (pfc_value_nonempty_old_leftcoefficientscoefficientdiagonal) = S ((S (pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal)) * pfc_terms_scale_nonempty_old_leftcoefficientscoefficient)) /\ exists ff_q_pfp_nonempty_old_leftcoefficientscoefficientdiagonalentry. pfc_terms_code_nonempty_old_leftcoefficientscoefficient = ff_q_pfp_nonempty_old_leftcoefficientscoefficientdiagonalentry * S ((S (pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal)) * pfc_terms_scale_nonempty_old_leftcoefficientscoefficient) + (pfc_value_nonempty_old_leftcoefficientscoefficientdiagonal))) /\ ((exists pfc_complement_nonempty_old_leftcoefficientscoefficientdiagonalterm pfc_left_nonempty_old_leftcoefficientscoefficientdiagonalterm pfc_right_nonempty_old_leftcoefficientscoefficientdiagonalterm. (((pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal)+pfc_complement_nonempty_old_leftcoefficientscoefficientdiagonalterm=(pfc_index_nonempty_old_leftcoefficients)) /\ ((((((exists pfa_gap_nonempty_old_leftcoefficientscoefficientdiagonaltermleftinside. pfa_gap_nonempty_old_leftcoefficientscoefficientdiagonaltermleftinside + S (pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal) = (L)) /\ ((((exists ff_h_pfp_nonempty_old_leftcoefficientscoefficientdiagonaltermleftentry. ff_h_pfp_nonempty_old_leftcoefficientscoefficientdiagonaltermleftentry + S (pfc_left_nonempty_old_leftcoefficientscoefficientdiagonalterm) = S ((S (pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal)) * ac)) /\ exists ff_q_pfp_nonempty_old_leftcoefficientscoefficientdiagonaltermleftentry. ab = ff_q_pfp_nonempty_old_leftcoefficientscoefficientdiagonaltermleftentry * S ((S (pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal)) * ac) + (pfc_left_nonempty_old_leftcoefficientscoefficientdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_old_leftcoefficientscoefficientdiagonaltermleftoutside. pfc_gap_nonempty_old_leftcoefficientscoefficientdiagonaltermleftoutside+(L)=(pfc_index_nonempty_old_leftcoefficientscoefficientdiagonal)) /\ (((pfc_left_nonempty_old_leftcoefficientscoefficientdiagonalterm)=0))))) /\ ((((((exists pfa_gap_nonempty_old_leftcoefficientscoefficientdiagonaltermrightinside. pfa_gap_nonempty_old_leftcoefficientscoefficientdiagonaltermrightinside + S (pfc_complement_nonempty_old_leftcoefficientscoefficientdiagonalterm) = (M)) /\ ((((exists ff_h_pfp_nonempty_old_leftcoefficientscoefficientdiagonaltermrightentry. ff_h_pfp_nonempty_old_leftcoefficientscoefficientdiagonaltermrightentry + S (pfc_right_nonempty_old_leftcoefficientscoefficientdiagonalterm) = S ((S (pfc_complement_nonempty_old_leftcoefficientscoefficientdiagonalterm)) * bc)) /\ exists ff_q_pfp_nonempty_old_leftcoefficientscoefficientdiagonaltermrightentry. bb = ff_q_pfp_nonempty_old_leftcoefficientscoefficientdiagonaltermrightentry * S ((S (pfc_complement_nonempty_old_leftcoefficientscoefficientdiagonalterm)) * bc) + (pfc_right_nonempty_old_leftcoefficientscoefficientdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_old_leftcoefficientscoefficientdiagonaltermrightoutside. pfc_gap_nonempty_old_leftcoefficientscoefficientdiagonaltermrightoutside+(M)=(pfc_complement_nonempty_old_leftcoefficientscoefficientdiagonalterm)) /\ (((pfc_right_nonempty_old_leftcoefficientscoefficientdiagonalterm)=0))))) /\ (((pfc_value_nonempty_old_leftcoefficientscoefficientdiagonal)=pfc_left_nonempty_old_leftcoefficientscoefficientdiagonalterm*pfc_right_nonempty_old_leftcoefficientscoefficientdiagonalterm))))))))))) /\ (((exists fs_u_pfc_nonempty_old_leftcoefficientscoefficientsum fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum. ((((exists fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_start. fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_start + S (0) = S ((S (0)) * fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum)) /\ exists fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_start. fs_u_pfc_nonempty_old_leftcoefficientscoefficientsum = fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_start * S ((S (0)) * fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum) + (0))) /\ ((((exists fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_terminal. fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_terminal + S (pfc_natural_sum_nonempty_old_leftcoefficientscoefficient) = S ((S (S (pfc_index_nonempty_old_leftcoefficients))) * fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum)) /\ exists fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_terminal. fs_u_pfc_nonempty_old_leftcoefficientscoefficientsum = fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_terminal * S ((S (S (pfc_index_nonempty_old_leftcoefficients))) * fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum) + (pfc_natural_sum_nonempty_old_leftcoefficientscoefficient))) /\ forall fs_i_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps. (exists fs_lt_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_bound. fs_lt_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_bound + S fs_i_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps = S (pfc_index_nonempty_old_leftcoefficients)) -> exists fs_a_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps fs_r_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps fs_s_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps. ((((exists fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_summand. fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_summand + S (fs_a_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps) = S ((S (fs_i_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps)) * pfc_terms_scale_nonempty_old_leftcoefficientscoefficient)) /\ exists fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_summand. pfc_terms_code_nonempty_old_leftcoefficientscoefficient = fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_summand * S ((S (fs_i_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps)) * pfc_terms_scale_nonempty_old_leftcoefficientscoefficient) + (fs_a_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_partial. fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_partial + S (fs_r_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps) = S ((S (fs_i_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps)) * fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum)) /\ exists fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_partial. fs_u_pfc_nonempty_old_leftcoefficientscoefficientsum = fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_partial * S ((S (fs_i_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps)) * fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum) + (fs_r_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_successor. fs_h_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_successor + S (fs_s_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps) = S ((S (S fs_i_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps)) * fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum)) /\ exists fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_successor. fs_u_pfc_nonempty_old_leftcoefficientscoefficientsum = fs_q_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps_successor * S ((S (S fs_i_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps)) * fs_v_pfc_nonempty_old_leftcoefficientscoefficientsum) + (fs_s_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps))) /\ fs_s_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps = fs_r_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps + fs_a_pfc_nonempty_old_leftcoefficientscoefficientsum_body_steps)))))) /\ ((((exists pfa_gap_nonempty_old_leftcoefficientscoefficientresiduebound. pfa_gap_nonempty_old_leftcoefficientscoefficientresiduebound + S (pfc_value_nonempty_old_leftcoefficients) = (p)) /\ ((exists pfa_offset_left_nonempty_old_leftcoefficientscoefficientresiduecongruence pfa_offset_right_nonempty_old_leftcoefficientscoefficientresiduecongruence. (pfc_natural_sum_nonempty_old_leftcoefficientscoefficient) + (p) * pfa_offset_left_nonempty_old_leftcoefficientscoefficientresiduecongruence = (pfc_value_nonempty_old_leftcoefficients) + (p) * pfa_offset_right_nonempty_old_leftcoefficientscoefficientresiduecongruence))))))))))))))))))) -> (((forall fom_index_pfp_nonempty_new_leftleft. (exists fom_gap_pfp_nonempty_new_leftleft_index_bound. fom_gap_pfp_nonempty_new_leftleft_index_bound + S (fom_index_pfp_nonempty_new_leftleft) = t+L) -> exists fom_value_pfp_nonempty_new_leftleft. ((((exists fom_beta_height_pfp_nonempty_new_leftleft_entry. fom_beta_height_pfp_nonempty_new_leftleft_entry + S (fom_value_pfp_nonempty_new_leftleft) = S ((S (fom_index_pfp_nonempty_new_leftleft)) * AC)) /\ exists fom_beta_quotient_pfp_nonempty_new_leftleft_entry. AB = fom_beta_quotient_pfp_nonempty_new_leftleft_entry * S ((S (fom_index_pfp_nonempty_new_leftleft)) * AC) + (fom_value_pfp_nonempty_new_leftleft))) /\ (exists fom_gap_pfp_nonempty_new_leftleft_value_bound. fom_gap_pfp_nonempty_new_leftleft_value_bound + S (fom_value_pfp_nonempty_new_leftleft) = p))) /\ (((forall fom_index_pfp_nonempty_new_leftright. (exists fom_gap_pfp_nonempty_new_leftright_index_bound. fom_gap_pfp_nonempty_new_leftright_index_bound + S (fom_index_pfp_nonempty_new_leftright) = M) -> exists fom_value_pfp_nonempty_new_leftright. ((((exists fom_beta_height_pfp_nonempty_new_leftright_entry. fom_beta_height_pfp_nonempty_new_leftright_entry + S (fom_value_pfp_nonempty_new_leftright) = S ((S (fom_index_pfp_nonempty_new_leftright)) * bc)) /\ exists fom_beta_quotient_pfp_nonempty_new_leftright_entry. bb = fom_beta_quotient_pfp_nonempty_new_leftright_entry * S ((S (fom_index_pfp_nonempty_new_leftright)) * bc) + (fom_value_pfp_nonempty_new_leftright))) /\ (exists fom_gap_pfp_nonempty_new_leftright_value_bound. fom_gap_pfp_nonempty_new_leftright_value_bound + S (fom_value_pfp_nonempty_new_leftright) = p))) /\ (((((((t+L)=0 \/ (M)=0) /\ (((K)=0)))) \/ (((~((t+L)=0)) /\ (((~((M)=0)) /\ (((t+L)+(M)=S (K)))))))) /\ ((forall pfc_index_nonempty_new_leftcoefficients. (exists pfa_gap_nonempty_new_leftcoefficientsbound. pfa_gap_nonempty_new_leftcoefficientsbound + S (pfc_index_nonempty_new_leftcoefficients) = (K)) -> exists pfc_value_nonempty_new_leftcoefficients. ((((exists ff_h_pfp_nonempty_new_leftcoefficientsentry. ff_h_pfp_nonempty_new_leftcoefficientsentry + S (pfc_value_nonempty_new_leftcoefficients) = S ((S (pfc_index_nonempty_new_leftcoefficients)) * CC)) /\ exists ff_q_pfp_nonempty_new_leftcoefficientsentry. CB = ff_q_pfp_nonempty_new_leftcoefficientsentry * S ((S (pfc_index_nonempty_new_leftcoefficients)) * CC) + (pfc_value_nonempty_new_leftcoefficients))) /\ ((exists pfc_terms_code_nonempty_new_leftcoefficientscoefficient pfc_terms_scale_nonempty_new_leftcoefficientscoefficient pfc_natural_sum_nonempty_new_leftcoefficientscoefficient. ((forall pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal. (exists pfa_gap_nonempty_new_leftcoefficientscoefficientdiagonalbound. pfa_gap_nonempty_new_leftcoefficientscoefficientdiagonalbound + S (pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal) = (S (pfc_index_nonempty_new_leftcoefficients))) -> exists pfc_value_nonempty_new_leftcoefficientscoefficientdiagonal. ((((exists ff_h_pfp_nonempty_new_leftcoefficientscoefficientdiagonalentry. ff_h_pfp_nonempty_new_leftcoefficientscoefficientdiagonalentry + S (pfc_value_nonempty_new_leftcoefficientscoefficientdiagonal) = S ((S (pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal)) * pfc_terms_scale_nonempty_new_leftcoefficientscoefficient)) /\ exists ff_q_pfp_nonempty_new_leftcoefficientscoefficientdiagonalentry. pfc_terms_code_nonempty_new_leftcoefficientscoefficient = ff_q_pfp_nonempty_new_leftcoefficientscoefficientdiagonalentry * S ((S (pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal)) * pfc_terms_scale_nonempty_new_leftcoefficientscoefficient) + (pfc_value_nonempty_new_leftcoefficientscoefficientdiagonal))) /\ ((exists pfc_complement_nonempty_new_leftcoefficientscoefficientdiagonalterm pfc_left_nonempty_new_leftcoefficientscoefficientdiagonalterm pfc_right_nonempty_new_leftcoefficientscoefficientdiagonalterm. (((pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal)+pfc_complement_nonempty_new_leftcoefficientscoefficientdiagonalterm=(pfc_index_nonempty_new_leftcoefficients)) /\ ((((((exists pfa_gap_nonempty_new_leftcoefficientscoefficientdiagonaltermleftinside. pfa_gap_nonempty_new_leftcoefficientscoefficientdiagonaltermleftinside + S (pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal) = (t+L)) /\ ((((exists ff_h_pfp_nonempty_new_leftcoefficientscoefficientdiagonaltermleftentry. ff_h_pfp_nonempty_new_leftcoefficientscoefficientdiagonaltermleftentry + S (pfc_left_nonempty_new_leftcoefficientscoefficientdiagonalterm) = S ((S (pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal)) * AC)) /\ exists ff_q_pfp_nonempty_new_leftcoefficientscoefficientdiagonaltermleftentry. AB = ff_q_pfp_nonempty_new_leftcoefficientscoefficientdiagonaltermleftentry * S ((S (pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal)) * AC) + (pfc_left_nonempty_new_leftcoefficientscoefficientdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_new_leftcoefficientscoefficientdiagonaltermleftoutside. pfc_gap_nonempty_new_leftcoefficientscoefficientdiagonaltermleftoutside+(t+L)=(pfc_index_nonempty_new_leftcoefficientscoefficientdiagonal)) /\ (((pfc_left_nonempty_new_leftcoefficientscoefficientdiagonalterm)=0))))) /\ ((((((exists pfa_gap_nonempty_new_leftcoefficientscoefficientdiagonaltermrightinside. pfa_gap_nonempty_new_leftcoefficientscoefficientdiagonaltermrightinside + S (pfc_complement_nonempty_new_leftcoefficientscoefficientdiagonalterm) = (M)) /\ ((((exists ff_h_pfp_nonempty_new_leftcoefficientscoefficientdiagonaltermrightentry. ff_h_pfp_nonempty_new_leftcoefficientscoefficientdiagonaltermrightentry + S (pfc_right_nonempty_new_leftcoefficientscoefficientdiagonalterm) = S ((S (pfc_complement_nonempty_new_leftcoefficientscoefficientdiagonalterm)) * bc)) /\ exists ff_q_pfp_nonempty_new_leftcoefficientscoefficientdiagonaltermrightentry. bb = ff_q_pfp_nonempty_new_leftcoefficientscoefficientdiagonaltermrightentry * S ((S (pfc_complement_nonempty_new_leftcoefficientscoefficientdiagonalterm)) * bc) + (pfc_right_nonempty_new_leftcoefficientscoefficientdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_new_leftcoefficientscoefficientdiagonaltermrightoutside. pfc_gap_nonempty_new_leftcoefficientscoefficientdiagonaltermrightoutside+(M)=(pfc_complement_nonempty_new_leftcoefficientscoefficientdiagonalterm)) /\ (((pfc_right_nonempty_new_leftcoefficientscoefficientdiagonalterm)=0))))) /\ (((pfc_value_nonempty_new_leftcoefficientscoefficientdiagonal)=pfc_left_nonempty_new_leftcoefficientscoefficientdiagonalterm*pfc_right_nonempty_new_leftcoefficientscoefficientdiagonalterm))))))))))) /\ (((exists fs_u_pfc_nonempty_new_leftcoefficientscoefficientsum fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum. ((((exists fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_start. fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_start + S (0) = S ((S (0)) * fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum)) /\ exists fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_start. fs_u_pfc_nonempty_new_leftcoefficientscoefficientsum = fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_start * S ((S (0)) * fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum) + (0))) /\ ((((exists fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_terminal. fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_terminal + S (pfc_natural_sum_nonempty_new_leftcoefficientscoefficient) = S ((S (S (pfc_index_nonempty_new_leftcoefficients))) * fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum)) /\ exists fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_terminal. fs_u_pfc_nonempty_new_leftcoefficientscoefficientsum = fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_terminal * S ((S (S (pfc_index_nonempty_new_leftcoefficients))) * fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum) + (pfc_natural_sum_nonempty_new_leftcoefficientscoefficient))) /\ forall fs_i_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps. (exists fs_lt_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_bound. fs_lt_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_bound + S fs_i_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps = S (pfc_index_nonempty_new_leftcoefficients)) -> exists fs_a_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps fs_r_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps fs_s_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps. ((((exists fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_summand. fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_summand + S (fs_a_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps) = S ((S (fs_i_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps)) * pfc_terms_scale_nonempty_new_leftcoefficientscoefficient)) /\ exists fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_summand. pfc_terms_code_nonempty_new_leftcoefficientscoefficient = fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_summand * S ((S (fs_i_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps)) * pfc_terms_scale_nonempty_new_leftcoefficientscoefficient) + (fs_a_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_partial. fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_partial + S (fs_r_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps) = S ((S (fs_i_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps)) * fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum)) /\ exists fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_partial. fs_u_pfc_nonempty_new_leftcoefficientscoefficientsum = fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_partial * S ((S (fs_i_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps)) * fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum) + (fs_r_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_successor. fs_h_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_successor + S (fs_s_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps) = S ((S (S fs_i_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps)) * fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum)) /\ exists fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_successor. fs_u_pfc_nonempty_new_leftcoefficientscoefficientsum = fs_q_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps_successor * S ((S (S fs_i_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps)) * fs_v_pfc_nonempty_new_leftcoefficientscoefficientsum) + (fs_s_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps))) /\ fs_s_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps = fs_r_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps + fs_a_pfc_nonempty_new_leftcoefficientscoefficientsum_body_steps)))))) /\ ((((exists pfa_gap_nonempty_new_leftcoefficientscoefficientresiduebound. pfa_gap_nonempty_new_leftcoefficientscoefficientresiduebound + S (pfc_value_nonempty_new_leftcoefficients) = (p)) /\ ((exists pfa_offset_left_nonempty_new_leftcoefficientscoefficientresiduecongruence pfa_offset_right_nonempty_new_leftcoefficientscoefficientresiduecongruence. (pfc_natural_sum_nonempty_new_leftcoefficientscoefficient) + (p) * pfa_offset_left_nonempty_new_leftcoefficientscoefficientresiduecongruence = (pfc_value_nonempty_new_leftcoefficients) + (p) * pfa_offset_right_nonempty_new_leftcoefficientscoefficientresiduecongruence))))))))))))))))))) -> (((K=t+N) /\ ((((forall pfp_repeat_index_nonempty_product_padding_leftzeros. (exists pfa_gap_nonempty_product_padding_leftzerosindex. pfa_gap_nonempty_product_padding_leftzerosindex + S (pfp_repeat_index_nonempty_product_padding_leftzeros) = (t)) -> (((exists ff_h_pfp_nonempty_product_padding_leftzerosentry. ff_h_pfp_nonempty_product_padding_leftzerosentry + S (0) = S ((S (pfp_repeat_index_nonempty_product_padding_leftzeros)) * CC)) /\ exists ff_q_pfp_nonempty_product_padding_leftzerosentry. CB = ff_q_pfp_nonempty_product_padding_leftzerosentry * S ((S (pfp_repeat_index_nonempty_product_padding_leftzeros)) * CC) + (0)))) /\ ((forall pfrep_index_nonempty_product_padding_left pfrep_value_nonempty_product_padding_left. (exists pfa_gap_nonempty_product_padding_leftbound. pfa_gap_nonempty_product_padding_leftbound + S (pfrep_index_nonempty_product_padding_left) = (N)) -> (((exists ff_h_pfp_nonempty_product_padding_leftinput. ff_h_pfp_nonempty_product_padding_leftinput + S (pfrep_value_nonempty_product_padding_left) = S ((S (pfrep_index_nonempty_product_padding_left)) * cc)) /\ exists ff_q_pfp_nonempty_product_padding_leftinput. cb = ff_q_pfp_nonempty_product_padding_leftinput * S ((S (pfrep_index_nonempty_product_padding_left)) * cc) + (pfrep_value_nonempty_product_padding_left))) -> (((exists ff_h_pfp_nonempty_product_padding_leftoutput. ff_h_pfp_nonempty_product_padding_leftoutput + S (pfrep_value_nonempty_product_padding_left) = S ((S ((t)+pfrep_index_nonempty_product_padding_left)) * CC)) /\ exists ff_q_pfp_nonempty_product_padding_leftoutput. CB = ff_q_pfp_nonempty_product_padding_leftoutput * S ((S ((t)+pfrep_index_nonempty_product_padding_left)) * CC) + (pfrep_value_nonempty_product_padding_left))))))))))Constructive proof overview
Generated structural guide
Two actual nonempty-factor products are related by exact leading-zero output padding and its proved length equation; no raw beta-code equality is asserted.
The unchanged tactic script uses 8 declared prerequisites and contains 142 exact native proof lines.
Alpha v34 checked-use · first admitted v33 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
PX006A polynomial_product_length_left_padding_left le_trans Alpha theorem; checked-use authorized le_add_right Alpha theorem; checked-use authorized PX0068 prime_field_convolution_coefficient_before_left_padding_left prime_field_convolution_prefix_entry Alpha theorem; checked-use authorized matrix_recursive_lt_add_left Alpha theorem; checked-use authorized prime_field_convolution_coefficient_functional Alpha theorem; checked-use authorized PX0066 prime_field_convolution_coefficient_left_padding_leftDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (3)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–20
03Fix variables and assumptionsL21–22
04Separate the logical casesL23–28
05Establish hlengthL29–38
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply polynomial product length left padding left.
- L29
have hlength : K=t+N - L30
specialize polynomial_product_length_left_padding_left (L) - L31
specialize polynomial_product_length_left_padding_left (M) - L32
specialize polynomial_product_length_left_padding_left (N) - L33
specialize polynomial_product_length_left_padding_left (t) - L34
specialize polynomial_product_length_left_padding_left (K) - L35
apply polynomial_product_length_left_padding_left - L36
exact hc_right_right_left - L37
exact hL - L38
exact hM
06Use earlier factsL39–39
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L39
exact hn_right_right_left
07Separate the logical casesL40–40
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L40
split
08Use earlier factsL41–41
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L41
exact hlength
09Separate the logical casesL42–42
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
split
10Fix variables and assumptionsL43–44
11Establish hvL45–54
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hn right right right.
- L45
have hv : ∃ r. BetaAt(CB,CC,i,r) ∧ FpConvolutionCoefficient(p,AB,AC,t + L,bb,bc,M,i,r)Definitions: FpConvolutionCoefficientBetaAt - L46
specialize hn_right_right_right (i) - L47
apply hn_right_right_right - L48
specialize le_trans (S i) - L49
specialize le_trans (t) - L50
specialize le_trans (K) - L51
apply le_trans - L52
exact hi - L53
rewrite hlength - L54
specialize le_add_right (t)
12Use earlier factsL55–56
13Separate the logical casesL57–58
14Establish hzeroL59–68
Establish this local claim before using it. It is not an additional assumption.
- L59
have hzero : x=0 - L60
specialize prime_field_convolution_coefficient_before_left_padding_left (p) - L61
specialize prime_field_convolution_coefficient_before_left_padding_left (ab) - L62
specialize prime_field_convolution_coefficient_before_left_padding_left (ac) - L63
specialize prime_field_convolution_coefficient_before_left_padding_left (L) - L64
specialize prime_field_convolution_coefficient_before_left_padding_left (bb) - L65
specialize prime_field_convolution_coefficient_before_left_padding_left (bc) - L66
specialize prime_field_convolution_coefficient_before_left_padding_left (M) - L67
specialize prime_field_convolution_coefficient_before_left_padding_left (AB) - L68
specialize prime_field_convolution_coefficient_before_left_padding_left (AC)
15Use earlier factsL69–76
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L69
specialize prime_field_convolution_coefficient_before_left_padding_left (t) - L70
specialize prime_field_convolution_coefficient_before_left_padding_left (i) - L71
specialize prime_field_convolution_coefficient_before_left_padding_left (x) - L72
apply prime_field_convolution_coefficient_before_left_padding_left - L73
exact hp - L74
exact hpad - L75
exact hi - L76
exact hv_witness_right
16Calculate and transport equalitiesL77–78
17Use earlier factsL79–79
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L79
exact hv_witness_left
18Fix variables and assumptionsL80–83
19Establish hcoefficientL84–93
Establish this local claim before using it. It is not an additional assumption.
- L84
have hcoefficient : FpConvolutionCoefficient(p,ab,ac,L,bb,bc,M,i,a)Definitions: FpConvolutionCoefficient - L85
specialize prime_field_convolution_prefix_entry (p) - L86
specialize prime_field_convolution_prefix_entry (ab) - L87
specialize prime_field_convolution_prefix_entry (ac) - L88
specialize prime_field_convolution_prefix_entry (L) - L89
specialize prime_field_convolution_prefix_entry (bb) - L90
specialize prime_field_convolution_prefix_entry (bc) - L91
specialize prime_field_convolution_prefix_entry (M) - L92
specialize prime_field_convolution_prefix_entry (cb) - L93
specialize prime_field_convolution_prefix_entry (cc)
20Use earlier factsL94–100
Instantiate or apply named facts and discharge the corresponding proof obligations.
21Establish hvL101–109
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hn right right right.
- L101
have hv : ∃ r. BetaAt(CB,CC,t + i,r) ∧ FpConvolutionCoefficient(p,AB,AC,t + L,bb,bc,M,t + i,r)Definitions: FpConvolutionCoefficientBetaAt - L102
specialize hn_right_right_right (t+i) - L103
apply hn_right_right_right - L104
rewrite hlength - L105
specialize matrix_recursive_lt_add_left (i) - L106
specialize matrix_recursive_lt_add_left (N) - L107
specialize matrix_recursive_lt_add_left (t) - L108
apply matrix_recursive_lt_add_left - L109
exact hi
22Separate the logical casesL110–111
23Establish heqL112–121
Establish this local claim before using it. It is not an additional assumption.
- L112
have heq : x=a - L113
specialize prime_field_convolution_coefficient_functional (p) - L114
specialize prime_field_convolution_coefficient_functional (AB) - L115
specialize prime_field_convolution_coefficient_functional (AC) - L116
specialize prime_field_convolution_coefficient_functional (t+L) - L117
specialize prime_field_convolution_coefficient_functional (bb) - L118
specialize prime_field_convolution_coefficient_functional (bc) - L119
specialize prime_field_convolution_coefficient_functional (M) - L120
specialize prime_field_convolution_coefficient_functional (t+i) - L121
specialize prime_field_convolution_coefficient_functional (x)
24Use earlier factsL122–131
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L122
specialize prime_field_convolution_coefficient_functional (a) - L123
apply prime_field_convolution_coefficient_functional - L124
exact hv_witness_right - L125
specialize prime_field_convolution_coefficient_left_padding_left (p) - L126
specialize prime_field_convolution_coefficient_left_padding_left (ab) - L127
specialize prime_field_convolution_coefficient_left_padding_left (ac) - L128
specialize prime_field_convolution_coefficient_left_padding_left (L) - L129
specialize prime_field_convolution_coefficient_left_padding_left (bb) - L130
specialize prime_field_convolution_coefficient_left_padding_left (bc) - L131
specialize prime_field_convolution_coefficient_left_padding_left (M)
25Use earlier factsL132–139
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L132
specialize prime_field_convolution_coefficient_left_padding_left (AB) - L133
specialize prime_field_convolution_coefficient_left_padding_left (AC) - L134
specialize prime_field_convolution_coefficient_left_padding_left (t) - L135
specialize prime_field_convolution_coefficient_left_padding_left (i) - L136
specialize prime_field_convolution_coefficient_left_padding_left (a) - L137
apply prime_field_convolution_coefficient_left_padding_left - L138
exact hpad - L139
exact hcoefficient
26Calculate and transport equalitiesL140–141
27Use earlier factsL142–142
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L142
exact hv_witness_left
Original exact command ledger · 142 lines
- 0001
intro p - 0002
intro ab - 0003
intro ac - 0004
intro L - 0005
intro bb - 0006
intro bc - 0007
intro M - 0008
intro cb - 0009
intro cc - 0010
intro N - 0011
intro AB - 0012
intro AC - 0013
intro t - 0014
intro CB - 0015
intro CC - 0016
intro K - 0017
intro hp - 0018
intro hL - 0019
intro hM - 0020
intro hpad - 0021
intro hc - 0022
intro hn - 0023
cases hc - 0024
cases hc_right - 0025
cases hc_right_right - 0026
cases hn - 0027
cases hn_right - 0028
cases hn_right_right - 0029
have hlength : K=t+N - 0030
specialize polynomial_product_length_left_padding_left (L) - 0031
specialize polynomial_product_length_left_padding_left (M) - 0032
specialize polynomial_product_length_left_padding_left (N) - 0033
specialize polynomial_product_length_left_padding_left (t) - 0034
specialize polynomial_product_length_left_padding_left (K) - 0035
apply polynomial_product_length_left_padding_left - 0036
exact hc_right_right_left - 0037
exact hL - 0038
exact hM - 0039
exact hn_right_right_left - 0040
split - 0041
exact hlength - 0042
split - 0043
intro i - 0044
intro hi - 0045
have hv : exists r. ((((exists ff_h_pfp_nonempty_zero_entry_left. ff_h_pfp_nonempty_zero_entry_left + S (r) = S ((S (i)) * CC)) /\ exists ff_q_pfp_nonempty_zero_entry_left. CB = ff_q_pfp_nonempty_zero_entry_left * S ((S (i)) * CC) + (r))) /\ ((exists pfc_terms_code_nonempty_zero_coefficient_left pfc_terms_scale_nonempty_zero_coefficient_left pfc_natural_sum_nonempty_zero_coefficient_left. ((forall pfc_index_nonempty_zero_coefficient_leftdiagonal. (exists pfa_gap_nonempty_zero_coefficient_leftdiagonalbound. pfa_gap_nonempty_zero_coefficient_leftdiagonalbound + S (pfc_index_nonempty_zero_coefficient_leftdiagonal) = (S (i))) -> exists pfc_value_nonempty_zero_coefficient_leftdiagonal. ((((exists ff_h_pfp_nonempty_zero_coefficient_leftdiagonalentry. ff_h_pfp_nonempty_zero_coefficient_leftdiagonalentry + S (pfc_value_nonempty_zero_coefficient_leftdiagonal) = S ((S (pfc_index_nonempty_zero_coefficient_leftdiagonal)) * pfc_terms_scale_nonempty_zero_coefficient_left)) /\ exists ff_q_pfp_nonempty_zero_coefficient_leftdiagonalentry. pfc_terms_code_nonempty_zero_coefficient_left = ff_q_pfp_nonempty_zero_coefficient_leftdiagonalentry * S ((S (pfc_index_nonempty_zero_coefficient_leftdiagonal)) * pfc_terms_scale_nonempty_zero_coefficient_left) + (pfc_value_nonempty_zero_coefficient_leftdiagonal))) /\ ((exists pfc_complement_nonempty_zero_coefficient_leftdiagonalterm pfc_left_nonempty_zero_coefficient_leftdiagonalterm pfc_right_nonempty_zero_coefficient_leftdiagonalterm. (((pfc_index_nonempty_zero_coefficient_leftdiagonal)+pfc_complement_nonempty_zero_coefficient_leftdiagonalterm=(i)) /\ ((((((exists pfa_gap_nonempty_zero_coefficient_leftdiagonaltermleftinside. pfa_gap_nonempty_zero_coefficient_leftdiagonaltermleftinside + S (pfc_index_nonempty_zero_coefficient_leftdiagonal) = (t+L)) /\ ((((exists ff_h_pfp_nonempty_zero_coefficient_leftdiagonaltermleftentry. ff_h_pfp_nonempty_zero_coefficient_leftdiagonaltermleftentry + S (pfc_left_nonempty_zero_coefficient_leftdiagonalterm) = S ((S (pfc_index_nonempty_zero_coefficient_leftdiagonal)) * AC)) /\ exists ff_q_pfp_nonempty_zero_coefficient_leftdiagonaltermleftentry. AB = ff_q_pfp_nonempty_zero_coefficient_leftdiagonaltermleftentry * S ((S (pfc_index_nonempty_zero_coefficient_leftdiagonal)) * AC) + (pfc_left_nonempty_zero_coefficient_leftdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_zero_coefficient_leftdiagonaltermleftoutside. pfc_gap_nonempty_zero_coefficient_leftdiagonaltermleftoutside+(t+L)=(pfc_index_nonempty_zero_coefficient_leftdiagonal)) /\ (((pfc_left_nonempty_zero_coefficient_leftdiagonalterm)=0))))) /\ ((((((exists pfa_gap_nonempty_zero_coefficient_leftdiagonaltermrightinside. pfa_gap_nonempty_zero_coefficient_leftdiagonaltermrightinside + S (pfc_complement_nonempty_zero_coefficient_leftdiagonalterm) = (M)) /\ ((((exists ff_h_pfp_nonempty_zero_coefficient_leftdiagonaltermrightentry. ff_h_pfp_nonempty_zero_coefficient_leftdiagonaltermrightentry + S (pfc_right_nonempty_zero_coefficient_leftdiagonalterm) = S ((S (pfc_complement_nonempty_zero_coefficient_leftdiagonalterm)) * bc)) /\ exists ff_q_pfp_nonempty_zero_coefficient_leftdiagonaltermrightentry. bb = ff_q_pfp_nonempty_zero_coefficient_leftdiagonaltermrightentry * S ((S (pfc_complement_nonempty_zero_coefficient_leftdiagonalterm)) * bc) + (pfc_right_nonempty_zero_coefficient_leftdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_zero_coefficient_leftdiagonaltermrightoutside. pfc_gap_nonempty_zero_coefficient_leftdiagonaltermrightoutside+(M)=(pfc_complement_nonempty_zero_coefficient_leftdiagonalterm)) /\ (((pfc_right_nonempty_zero_coefficient_leftdiagonalterm)=0))))) /\ (((pfc_value_nonempty_zero_coefficient_leftdiagonal)=pfc_left_nonempty_zero_coefficient_leftdiagonalterm*pfc_right_nonempty_zero_coefficient_leftdiagonalterm))))))))))) /\ (((exists fs_u_pfc_nonempty_zero_coefficient_leftsum fs_v_pfc_nonempty_zero_coefficient_leftsum. ((((exists fs_h_pfc_nonempty_zero_coefficient_leftsum_body_start. fs_h_pfc_nonempty_zero_coefficient_leftsum_body_start + S (0) = S ((S (0)) * fs_v_pfc_nonempty_zero_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_zero_coefficient_leftsum_body_start. fs_u_pfc_nonempty_zero_coefficient_leftsum = fs_q_pfc_nonempty_zero_coefficient_leftsum_body_start * S ((S (0)) * fs_v_pfc_nonempty_zero_coefficient_leftsum) + (0))) /\ ((((exists fs_h_pfc_nonempty_zero_coefficient_leftsum_body_terminal. fs_h_pfc_nonempty_zero_coefficient_leftsum_body_terminal + S (pfc_natural_sum_nonempty_zero_coefficient_left) = S ((S (S (i))) * fs_v_pfc_nonempty_zero_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_zero_coefficient_leftsum_body_terminal. fs_u_pfc_nonempty_zero_coefficient_leftsum = fs_q_pfc_nonempty_zero_coefficient_leftsum_body_terminal * S ((S (S (i))) * fs_v_pfc_nonempty_zero_coefficient_leftsum) + (pfc_natural_sum_nonempty_zero_coefficient_left))) /\ forall fs_i_pfc_nonempty_zero_coefficient_leftsum_body_steps. (exists fs_lt_pfc_nonempty_zero_coefficient_leftsum_body_steps_bound. fs_lt_pfc_nonempty_zero_coefficient_leftsum_body_steps_bound + S fs_i_pfc_nonempty_zero_coefficient_leftsum_body_steps = S (i)) -> exists fs_a_pfc_nonempty_zero_coefficient_leftsum_body_steps fs_r_pfc_nonempty_zero_coefficient_leftsum_body_steps fs_s_pfc_nonempty_zero_coefficient_leftsum_body_steps. ((((exists fs_h_pfc_nonempty_zero_coefficient_leftsum_body_steps_summand. fs_h_pfc_nonempty_zero_coefficient_leftsum_body_steps_summand + S (fs_a_pfc_nonempty_zero_coefficient_leftsum_body_steps) = S ((S (fs_i_pfc_nonempty_zero_coefficient_leftsum_body_steps)) * pfc_terms_scale_nonempty_zero_coefficient_left)) /\ exists fs_q_pfc_nonempty_zero_coefficient_leftsum_body_steps_summand. pfc_terms_code_nonempty_zero_coefficient_left = fs_q_pfc_nonempty_zero_coefficient_leftsum_body_steps_summand * S ((S (fs_i_pfc_nonempty_zero_coefficient_leftsum_body_steps)) * pfc_terms_scale_nonempty_zero_coefficient_left) + (fs_a_pfc_nonempty_zero_coefficient_leftsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_zero_coefficient_leftsum_body_steps_partial. fs_h_pfc_nonempty_zero_coefficient_leftsum_body_steps_partial + S (fs_r_pfc_nonempty_zero_coefficient_leftsum_body_steps) = S ((S (fs_i_pfc_nonempty_zero_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_zero_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_zero_coefficient_leftsum_body_steps_partial. fs_u_pfc_nonempty_zero_coefficient_leftsum = fs_q_pfc_nonempty_zero_coefficient_leftsum_body_steps_partial * S ((S (fs_i_pfc_nonempty_zero_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_zero_coefficient_leftsum) + (fs_r_pfc_nonempty_zero_coefficient_leftsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_zero_coefficient_leftsum_body_steps_successor. fs_h_pfc_nonempty_zero_coefficient_leftsum_body_steps_successor + S (fs_s_pfc_nonempty_zero_coefficient_leftsum_body_steps) = S ((S (S fs_i_pfc_nonempty_zero_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_zero_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_zero_coefficient_leftsum_body_steps_successor. fs_u_pfc_nonempty_zero_coefficient_leftsum = fs_q_pfc_nonempty_zero_coefficient_leftsum_body_steps_successor * S ((S (S fs_i_pfc_nonempty_zero_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_zero_coefficient_leftsum) + (fs_s_pfc_nonempty_zero_coefficient_leftsum_body_steps))) /\ fs_s_pfc_nonempty_zero_coefficient_leftsum_body_steps = fs_r_pfc_nonempty_zero_coefficient_leftsum_body_steps + fs_a_pfc_nonempty_zero_coefficient_leftsum_body_steps)))))) /\ ((((exists pfa_gap_nonempty_zero_coefficient_leftresiduebound. pfa_gap_nonempty_zero_coefficient_leftresiduebound + S (r) = (p)) /\ ((exists pfa_offset_left_nonempty_zero_coefficient_leftresiduecongruence pfa_offset_right_nonempty_zero_coefficient_leftresiduecongruence. (pfc_natural_sum_nonempty_zero_coefficient_left) + (p) * pfa_offset_left_nonempty_zero_coefficient_leftresiduecongruence = (r) + (p) * pfa_offset_right_nonempty_zero_coefficient_leftresiduecongruence))))))))))) - 0046
specialize hn_right_right_right (i) - 0047
apply hn_right_right_right - 0048
specialize le_trans (S i) - 0049
specialize le_trans (t) - 0050
specialize le_trans (K) - 0051
apply le_trans - 0052
exact hi - 0053
rewrite hlength - 0054
specialize le_add_right (t) - 0055
specialize le_add_right (N) - 0056
apply le_add_right - 0057
cases hv - 0058
cases hv_witness - 0059
have hzero : x=0 - 0060
specialize prime_field_convolution_coefficient_before_left_padding_left (p) - 0061
specialize prime_field_convolution_coefficient_before_left_padding_left (ab) - 0062
specialize prime_field_convolution_coefficient_before_left_padding_left (ac) - 0063
specialize prime_field_convolution_coefficient_before_left_padding_left (L) - 0064
specialize prime_field_convolution_coefficient_before_left_padding_left (bb) - 0065
specialize prime_field_convolution_coefficient_before_left_padding_left (bc) - 0066
specialize prime_field_convolution_coefficient_before_left_padding_left (M) - 0067
specialize prime_field_convolution_coefficient_before_left_padding_left (AB) - 0068
specialize prime_field_convolution_coefficient_before_left_padding_left (AC) - 0069
specialize prime_field_convolution_coefficient_before_left_padding_left (t) - 0070
specialize prime_field_convolution_coefficient_before_left_padding_left (i) - 0071
specialize prime_field_convolution_coefficient_before_left_padding_left (x) - 0072
apply prime_field_convolution_coefficient_before_left_padding_left - 0073
exact hp - 0074
exact hpad - 0075
exact hi - 0076
exact hv_witness_right - 0077
rewrite hzero at hv_witness_left - 0078
rewrite hzero at hv_witness_left - 0079
exact hv_witness_left - 0080
intro i - 0081
intro a - 0082
intro hi - 0083
intro ha - 0084
have hcoefficient : exists pfc_terms_code_nonempty_original_coefficient_left pfc_terms_scale_nonempty_original_coefficient_left pfc_natural_sum_nonempty_original_coefficient_left. ((forall pfc_index_nonempty_original_coefficient_leftdiagonal. (exists pfa_gap_nonempty_original_coefficient_leftdiagonalbound. pfa_gap_nonempty_original_coefficient_leftdiagonalbound + S (pfc_index_nonempty_original_coefficient_leftdiagonal) = (S (i))) -> exists pfc_value_nonempty_original_coefficient_leftdiagonal. ((((exists ff_h_pfp_nonempty_original_coefficient_leftdiagonalentry. ff_h_pfp_nonempty_original_coefficient_leftdiagonalentry + S (pfc_value_nonempty_original_coefficient_leftdiagonal) = S ((S (pfc_index_nonempty_original_coefficient_leftdiagonal)) * pfc_terms_scale_nonempty_original_coefficient_left)) /\ exists ff_q_pfp_nonempty_original_coefficient_leftdiagonalentry. pfc_terms_code_nonempty_original_coefficient_left = ff_q_pfp_nonempty_original_coefficient_leftdiagonalentry * S ((S (pfc_index_nonempty_original_coefficient_leftdiagonal)) * pfc_terms_scale_nonempty_original_coefficient_left) + (pfc_value_nonempty_original_coefficient_leftdiagonal))) /\ ((exists pfc_complement_nonempty_original_coefficient_leftdiagonalterm pfc_left_nonempty_original_coefficient_leftdiagonalterm pfc_right_nonempty_original_coefficient_leftdiagonalterm. (((pfc_index_nonempty_original_coefficient_leftdiagonal)+pfc_complement_nonempty_original_coefficient_leftdiagonalterm=(i)) /\ ((((((exists pfa_gap_nonempty_original_coefficient_leftdiagonaltermleftinside. pfa_gap_nonempty_original_coefficient_leftdiagonaltermleftinside + S (pfc_index_nonempty_original_coefficient_leftdiagonal) = (L)) /\ ((((exists ff_h_pfp_nonempty_original_coefficient_leftdiagonaltermleftentry. ff_h_pfp_nonempty_original_coefficient_leftdiagonaltermleftentry + S (pfc_left_nonempty_original_coefficient_leftdiagonalterm) = S ((S (pfc_index_nonempty_original_coefficient_leftdiagonal)) * ac)) /\ exists ff_q_pfp_nonempty_original_coefficient_leftdiagonaltermleftentry. ab = ff_q_pfp_nonempty_original_coefficient_leftdiagonaltermleftentry * S ((S (pfc_index_nonempty_original_coefficient_leftdiagonal)) * ac) + (pfc_left_nonempty_original_coefficient_leftdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_original_coefficient_leftdiagonaltermleftoutside. pfc_gap_nonempty_original_coefficient_leftdiagonaltermleftoutside+(L)=(pfc_index_nonempty_original_coefficient_leftdiagonal)) /\ (((pfc_left_nonempty_original_coefficient_leftdiagonalterm)=0))))) /\ ((((((exists pfa_gap_nonempty_original_coefficient_leftdiagonaltermrightinside. pfa_gap_nonempty_original_coefficient_leftdiagonaltermrightinside + S (pfc_complement_nonempty_original_coefficient_leftdiagonalterm) = (M)) /\ ((((exists ff_h_pfp_nonempty_original_coefficient_leftdiagonaltermrightentry. ff_h_pfp_nonempty_original_coefficient_leftdiagonaltermrightentry + S (pfc_right_nonempty_original_coefficient_leftdiagonalterm) = S ((S (pfc_complement_nonempty_original_coefficient_leftdiagonalterm)) * bc)) /\ exists ff_q_pfp_nonempty_original_coefficient_leftdiagonaltermrightentry. bb = ff_q_pfp_nonempty_original_coefficient_leftdiagonaltermrightentry * S ((S (pfc_complement_nonempty_original_coefficient_leftdiagonalterm)) * bc) + (pfc_right_nonempty_original_coefficient_leftdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_original_coefficient_leftdiagonaltermrightoutside. pfc_gap_nonempty_original_coefficient_leftdiagonaltermrightoutside+(M)=(pfc_complement_nonempty_original_coefficient_leftdiagonalterm)) /\ (((pfc_right_nonempty_original_coefficient_leftdiagonalterm)=0))))) /\ (((pfc_value_nonempty_original_coefficient_leftdiagonal)=pfc_left_nonempty_original_coefficient_leftdiagonalterm*pfc_right_nonempty_original_coefficient_leftdiagonalterm))))))))))) /\ (((exists fs_u_pfc_nonempty_original_coefficient_leftsum fs_v_pfc_nonempty_original_coefficient_leftsum. ((((exists fs_h_pfc_nonempty_original_coefficient_leftsum_body_start. fs_h_pfc_nonempty_original_coefficient_leftsum_body_start + S (0) = S ((S (0)) * fs_v_pfc_nonempty_original_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_original_coefficient_leftsum_body_start. fs_u_pfc_nonempty_original_coefficient_leftsum = fs_q_pfc_nonempty_original_coefficient_leftsum_body_start * S ((S (0)) * fs_v_pfc_nonempty_original_coefficient_leftsum) + (0))) /\ ((((exists fs_h_pfc_nonempty_original_coefficient_leftsum_body_terminal. fs_h_pfc_nonempty_original_coefficient_leftsum_body_terminal + S (pfc_natural_sum_nonempty_original_coefficient_left) = S ((S (S (i))) * fs_v_pfc_nonempty_original_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_original_coefficient_leftsum_body_terminal. fs_u_pfc_nonempty_original_coefficient_leftsum = fs_q_pfc_nonempty_original_coefficient_leftsum_body_terminal * S ((S (S (i))) * fs_v_pfc_nonempty_original_coefficient_leftsum) + (pfc_natural_sum_nonempty_original_coefficient_left))) /\ forall fs_i_pfc_nonempty_original_coefficient_leftsum_body_steps. (exists fs_lt_pfc_nonempty_original_coefficient_leftsum_body_steps_bound. fs_lt_pfc_nonempty_original_coefficient_leftsum_body_steps_bound + S fs_i_pfc_nonempty_original_coefficient_leftsum_body_steps = S (i)) -> exists fs_a_pfc_nonempty_original_coefficient_leftsum_body_steps fs_r_pfc_nonempty_original_coefficient_leftsum_body_steps fs_s_pfc_nonempty_original_coefficient_leftsum_body_steps. ((((exists fs_h_pfc_nonempty_original_coefficient_leftsum_body_steps_summand. fs_h_pfc_nonempty_original_coefficient_leftsum_body_steps_summand + S (fs_a_pfc_nonempty_original_coefficient_leftsum_body_steps) = S ((S (fs_i_pfc_nonempty_original_coefficient_leftsum_body_steps)) * pfc_terms_scale_nonempty_original_coefficient_left)) /\ exists fs_q_pfc_nonempty_original_coefficient_leftsum_body_steps_summand. pfc_terms_code_nonempty_original_coefficient_left = fs_q_pfc_nonempty_original_coefficient_leftsum_body_steps_summand * S ((S (fs_i_pfc_nonempty_original_coefficient_leftsum_body_steps)) * pfc_terms_scale_nonempty_original_coefficient_left) + (fs_a_pfc_nonempty_original_coefficient_leftsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_original_coefficient_leftsum_body_steps_partial. fs_h_pfc_nonempty_original_coefficient_leftsum_body_steps_partial + S (fs_r_pfc_nonempty_original_coefficient_leftsum_body_steps) = S ((S (fs_i_pfc_nonempty_original_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_original_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_original_coefficient_leftsum_body_steps_partial. fs_u_pfc_nonempty_original_coefficient_leftsum = fs_q_pfc_nonempty_original_coefficient_leftsum_body_steps_partial * S ((S (fs_i_pfc_nonempty_original_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_original_coefficient_leftsum) + (fs_r_pfc_nonempty_original_coefficient_leftsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_original_coefficient_leftsum_body_steps_successor. fs_h_pfc_nonempty_original_coefficient_leftsum_body_steps_successor + S (fs_s_pfc_nonempty_original_coefficient_leftsum_body_steps) = S ((S (S fs_i_pfc_nonempty_original_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_original_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_original_coefficient_leftsum_body_steps_successor. fs_u_pfc_nonempty_original_coefficient_leftsum = fs_q_pfc_nonempty_original_coefficient_leftsum_body_steps_successor * S ((S (S fs_i_pfc_nonempty_original_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_original_coefficient_leftsum) + (fs_s_pfc_nonempty_original_coefficient_leftsum_body_steps))) /\ fs_s_pfc_nonempty_original_coefficient_leftsum_body_steps = fs_r_pfc_nonempty_original_coefficient_leftsum_body_steps + fs_a_pfc_nonempty_original_coefficient_leftsum_body_steps)))))) /\ ((((exists pfa_gap_nonempty_original_coefficient_leftresiduebound. pfa_gap_nonempty_original_coefficient_leftresiduebound + S (a) = (p)) /\ ((exists pfa_offset_left_nonempty_original_coefficient_leftresiduecongruence pfa_offset_right_nonempty_original_coefficient_leftresiduecongruence. (pfc_natural_sum_nonempty_original_coefficient_left) + (p) * pfa_offset_left_nonempty_original_coefficient_leftresiduecongruence = (a) + (p) * pfa_offset_right_nonempty_original_coefficient_leftresiduecongruence)))))))) - 0085
specialize prime_field_convolution_prefix_entry (p) - 0086
specialize prime_field_convolution_prefix_entry (ab) - 0087
specialize prime_field_convolution_prefix_entry (ac) - 0088
specialize prime_field_convolution_prefix_entry (L) - 0089
specialize prime_field_convolution_prefix_entry (bb) - 0090
specialize prime_field_convolution_prefix_entry (bc) - 0091
specialize prime_field_convolution_prefix_entry (M) - 0092
specialize prime_field_convolution_prefix_entry (cb) - 0093
specialize prime_field_convolution_prefix_entry (cc) - 0094
specialize prime_field_convolution_prefix_entry (N) - 0095
specialize prime_field_convolution_prefix_entry (i) - 0096
specialize prime_field_convolution_prefix_entry (a) - 0097
apply prime_field_convolution_prefix_entry - 0098
exact hc_right_right_right - 0099
exact hi - 0100
exact ha - 0101
have hv : exists r. ((((exists ff_h_pfp_nonempty_shifted_entry_left. ff_h_pfp_nonempty_shifted_entry_left + S (r) = S ((S (t+i)) * CC)) /\ exists ff_q_pfp_nonempty_shifted_entry_left. CB = ff_q_pfp_nonempty_shifted_entry_left * S ((S (t+i)) * CC) + (r))) /\ ((exists pfc_terms_code_nonempty_shifted_coefficient_left pfc_terms_scale_nonempty_shifted_coefficient_left pfc_natural_sum_nonempty_shifted_coefficient_left. ((forall pfc_index_nonempty_shifted_coefficient_leftdiagonal. (exists pfa_gap_nonempty_shifted_coefficient_leftdiagonalbound. pfa_gap_nonempty_shifted_coefficient_leftdiagonalbound + S (pfc_index_nonempty_shifted_coefficient_leftdiagonal) = (S (t+i))) -> exists pfc_value_nonempty_shifted_coefficient_leftdiagonal. ((((exists ff_h_pfp_nonempty_shifted_coefficient_leftdiagonalentry. ff_h_pfp_nonempty_shifted_coefficient_leftdiagonalentry + S (pfc_value_nonempty_shifted_coefficient_leftdiagonal) = S ((S (pfc_index_nonempty_shifted_coefficient_leftdiagonal)) * pfc_terms_scale_nonempty_shifted_coefficient_left)) /\ exists ff_q_pfp_nonempty_shifted_coefficient_leftdiagonalentry. pfc_terms_code_nonempty_shifted_coefficient_left = ff_q_pfp_nonempty_shifted_coefficient_leftdiagonalentry * S ((S (pfc_index_nonempty_shifted_coefficient_leftdiagonal)) * pfc_terms_scale_nonempty_shifted_coefficient_left) + (pfc_value_nonempty_shifted_coefficient_leftdiagonal))) /\ ((exists pfc_complement_nonempty_shifted_coefficient_leftdiagonalterm pfc_left_nonempty_shifted_coefficient_leftdiagonalterm pfc_right_nonempty_shifted_coefficient_leftdiagonalterm. (((pfc_index_nonempty_shifted_coefficient_leftdiagonal)+pfc_complement_nonempty_shifted_coefficient_leftdiagonalterm=(t+i)) /\ ((((((exists pfa_gap_nonempty_shifted_coefficient_leftdiagonaltermleftinside. pfa_gap_nonempty_shifted_coefficient_leftdiagonaltermleftinside + S (pfc_index_nonempty_shifted_coefficient_leftdiagonal) = (t+L)) /\ ((((exists ff_h_pfp_nonempty_shifted_coefficient_leftdiagonaltermleftentry. ff_h_pfp_nonempty_shifted_coefficient_leftdiagonaltermleftentry + S (pfc_left_nonempty_shifted_coefficient_leftdiagonalterm) = S ((S (pfc_index_nonempty_shifted_coefficient_leftdiagonal)) * AC)) /\ exists ff_q_pfp_nonempty_shifted_coefficient_leftdiagonaltermleftentry. AB = ff_q_pfp_nonempty_shifted_coefficient_leftdiagonaltermleftentry * S ((S (pfc_index_nonempty_shifted_coefficient_leftdiagonal)) * AC) + (pfc_left_nonempty_shifted_coefficient_leftdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_shifted_coefficient_leftdiagonaltermleftoutside. pfc_gap_nonempty_shifted_coefficient_leftdiagonaltermleftoutside+(t+L)=(pfc_index_nonempty_shifted_coefficient_leftdiagonal)) /\ (((pfc_left_nonempty_shifted_coefficient_leftdiagonalterm)=0))))) /\ ((((((exists pfa_gap_nonempty_shifted_coefficient_leftdiagonaltermrightinside. pfa_gap_nonempty_shifted_coefficient_leftdiagonaltermrightinside + S (pfc_complement_nonempty_shifted_coefficient_leftdiagonalterm) = (M)) /\ ((((exists ff_h_pfp_nonempty_shifted_coefficient_leftdiagonaltermrightentry. ff_h_pfp_nonempty_shifted_coefficient_leftdiagonaltermrightentry + S (pfc_right_nonempty_shifted_coefficient_leftdiagonalterm) = S ((S (pfc_complement_nonempty_shifted_coefficient_leftdiagonalterm)) * bc)) /\ exists ff_q_pfp_nonempty_shifted_coefficient_leftdiagonaltermrightentry. bb = ff_q_pfp_nonempty_shifted_coefficient_leftdiagonaltermrightentry * S ((S (pfc_complement_nonempty_shifted_coefficient_leftdiagonalterm)) * bc) + (pfc_right_nonempty_shifted_coefficient_leftdiagonalterm)))))) \/ (((exists pfc_gap_nonempty_shifted_coefficient_leftdiagonaltermrightoutside. pfc_gap_nonempty_shifted_coefficient_leftdiagonaltermrightoutside+(M)=(pfc_complement_nonempty_shifted_coefficient_leftdiagonalterm)) /\ (((pfc_right_nonempty_shifted_coefficient_leftdiagonalterm)=0))))) /\ (((pfc_value_nonempty_shifted_coefficient_leftdiagonal)=pfc_left_nonempty_shifted_coefficient_leftdiagonalterm*pfc_right_nonempty_shifted_coefficient_leftdiagonalterm))))))))))) /\ (((exists fs_u_pfc_nonempty_shifted_coefficient_leftsum fs_v_pfc_nonempty_shifted_coefficient_leftsum. ((((exists fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_start. fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_start + S (0) = S ((S (0)) * fs_v_pfc_nonempty_shifted_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_start. fs_u_pfc_nonempty_shifted_coefficient_leftsum = fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_start * S ((S (0)) * fs_v_pfc_nonempty_shifted_coefficient_leftsum) + (0))) /\ ((((exists fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_terminal. fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_terminal + S (pfc_natural_sum_nonempty_shifted_coefficient_left) = S ((S (S (t+i))) * fs_v_pfc_nonempty_shifted_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_terminal. fs_u_pfc_nonempty_shifted_coefficient_leftsum = fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_terminal * S ((S (S (t+i))) * fs_v_pfc_nonempty_shifted_coefficient_leftsum) + (pfc_natural_sum_nonempty_shifted_coefficient_left))) /\ forall fs_i_pfc_nonempty_shifted_coefficient_leftsum_body_steps. (exists fs_lt_pfc_nonempty_shifted_coefficient_leftsum_body_steps_bound. fs_lt_pfc_nonempty_shifted_coefficient_leftsum_body_steps_bound + S fs_i_pfc_nonempty_shifted_coefficient_leftsum_body_steps = S (t+i)) -> exists fs_a_pfc_nonempty_shifted_coefficient_leftsum_body_steps fs_r_pfc_nonempty_shifted_coefficient_leftsum_body_steps fs_s_pfc_nonempty_shifted_coefficient_leftsum_body_steps. ((((exists fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_steps_summand. fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_steps_summand + S (fs_a_pfc_nonempty_shifted_coefficient_leftsum_body_steps) = S ((S (fs_i_pfc_nonempty_shifted_coefficient_leftsum_body_steps)) * pfc_terms_scale_nonempty_shifted_coefficient_left)) /\ exists fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_steps_summand. pfc_terms_code_nonempty_shifted_coefficient_left = fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_steps_summand * S ((S (fs_i_pfc_nonempty_shifted_coefficient_leftsum_body_steps)) * pfc_terms_scale_nonempty_shifted_coefficient_left) + (fs_a_pfc_nonempty_shifted_coefficient_leftsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_steps_partial. fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_steps_partial + S (fs_r_pfc_nonempty_shifted_coefficient_leftsum_body_steps) = S ((S (fs_i_pfc_nonempty_shifted_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_shifted_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_steps_partial. fs_u_pfc_nonempty_shifted_coefficient_leftsum = fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_steps_partial * S ((S (fs_i_pfc_nonempty_shifted_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_shifted_coefficient_leftsum) + (fs_r_pfc_nonempty_shifted_coefficient_leftsum_body_steps))) /\ ((((exists fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_steps_successor. fs_h_pfc_nonempty_shifted_coefficient_leftsum_body_steps_successor + S (fs_s_pfc_nonempty_shifted_coefficient_leftsum_body_steps) = S ((S (S fs_i_pfc_nonempty_shifted_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_shifted_coefficient_leftsum)) /\ exists fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_steps_successor. fs_u_pfc_nonempty_shifted_coefficient_leftsum = fs_q_pfc_nonempty_shifted_coefficient_leftsum_body_steps_successor * S ((S (S fs_i_pfc_nonempty_shifted_coefficient_leftsum_body_steps)) * fs_v_pfc_nonempty_shifted_coefficient_leftsum) + (fs_s_pfc_nonempty_shifted_coefficient_leftsum_body_steps))) /\ fs_s_pfc_nonempty_shifted_coefficient_leftsum_body_steps = fs_r_pfc_nonempty_shifted_coefficient_leftsum_body_steps + fs_a_pfc_nonempty_shifted_coefficient_leftsum_body_steps)))))) /\ ((((exists pfa_gap_nonempty_shifted_coefficient_leftresiduebound. pfa_gap_nonempty_shifted_coefficient_leftresiduebound + S (r) = (p)) /\ ((exists pfa_offset_left_nonempty_shifted_coefficient_leftresiduecongruence pfa_offset_right_nonempty_shifted_coefficient_leftresiduecongruence. (pfc_natural_sum_nonempty_shifted_coefficient_left) + (p) * pfa_offset_left_nonempty_shifted_coefficient_leftresiduecongruence = (r) + (p) * pfa_offset_right_nonempty_shifted_coefficient_leftresiduecongruence))))))))))) - 0102
specialize hn_right_right_right (t+i) - 0103
apply hn_right_right_right - 0104
rewrite hlength - 0105
specialize matrix_recursive_lt_add_left (i) - 0106
specialize matrix_recursive_lt_add_left (N) - 0107
specialize matrix_recursive_lt_add_left (t) - 0108
apply matrix_recursive_lt_add_left - 0109
exact hi - 0110
cases hv - 0111
cases hv_witness - 0112
have heq : x=a - 0113
specialize prime_field_convolution_coefficient_functional (p) - 0114
specialize prime_field_convolution_coefficient_functional (AB) - 0115
specialize prime_field_convolution_coefficient_functional (AC) - 0116
specialize prime_field_convolution_coefficient_functional (t+L) - 0117
specialize prime_field_convolution_coefficient_functional (bb) - 0118
specialize prime_field_convolution_coefficient_functional (bc) - 0119
specialize prime_field_convolution_coefficient_functional (M) - 0120
specialize prime_field_convolution_coefficient_functional (t+i) - 0121
specialize prime_field_convolution_coefficient_functional (x) - 0122
specialize prime_field_convolution_coefficient_functional (a) - 0123
apply prime_field_convolution_coefficient_functional - 0124
exact hv_witness_right - 0125
specialize prime_field_convolution_coefficient_left_padding_left (p) - 0126
specialize prime_field_convolution_coefficient_left_padding_left (ab) - 0127
specialize prime_field_convolution_coefficient_left_padding_left (ac) - 0128
specialize prime_field_convolution_coefficient_left_padding_left (L) - 0129
specialize prime_field_convolution_coefficient_left_padding_left (bb) - 0130
specialize prime_field_convolution_coefficient_left_padding_left (bc) - 0131
specialize prime_field_convolution_coefficient_left_padding_left (M) - 0132
specialize prime_field_convolution_coefficient_left_padding_left (AB) - 0133
specialize prime_field_convolution_coefficient_left_padding_left (AC) - 0134
specialize prime_field_convolution_coefficient_left_padding_left (t) - 0135
specialize prime_field_convolution_coefficient_left_padding_left (i) - 0136
specialize prime_field_convolution_coefficient_left_padding_left (a) - 0137
apply prime_field_convolution_coefficient_left_padding_left - 0138
exact hpad - 0139
exact hcoefficient - 0140
rewrite heq at hv_witness_left - 0141
rewrite heq at hv_witness_left - 0142
exact hv_witness_left