PX0045

polynomial_diagonal_sum_right_add_congruent

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

The three independently beta-coded actual antidiagonal sums obey right additive congruence, including empty sum prefixes and with no raw-code equality.

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 bb bc cb cc L db dc M i N ub uc vb vc wb wc u v w. (forall pfp_index_diagonal_add_right_source. (exists pfa_gap_diagonal_add_right_sourceindex. pfa_gap_diagonal_add_right_sourceindex + S (pfp_index_diagonal_add_right_source) = (L)) -> exists pfp_left_diagonal_add_right_source pfp_right_diagonal_add_right_source pfp_value_diagonal_add_right_source. ((((exists ff_h_pfp_diagonal_add_right_sourceleft. ff_h_pfp_diagonal_add_right_sourceleft + S (pfp_left_diagonal_add_right_source) = S ((S (pfp_index_diagonal_add_right_source)) * ac)) /\ exists ff_q_pfp_diagonal_add_right_sourceleft. ab = ff_q_pfp_diagonal_add_right_sourceleft * S ((S (pfp_index_diagonal_add_right_source)) * ac) + (pfp_left_diagonal_add_right_source))) /\ (((((exists ff_h_pfp_diagonal_add_right_sourceright. ff_h_pfp_diagonal_add_right_sourceright + S (pfp_right_diagonal_add_right_source) = S ((S (pfp_index_diagonal_add_right_source)) * bc)) /\ exists ff_q_pfp_diagonal_add_right_sourceright. bb = ff_q_pfp_diagonal_add_right_sourceright * S ((S (pfp_index_diagonal_add_right_source)) * bc) + (pfp_right_diagonal_add_right_source))) /\ (((((exists ff_h_pfp_diagonal_add_right_sourcetarget. ff_h_pfp_diagonal_add_right_sourcetarget + S (pfp_value_diagonal_add_right_source) = S ((S (pfp_index_diagonal_add_right_source)) * cc)) /\ exists ff_q_pfp_diagonal_add_right_sourcetarget. cb = ff_q_pfp_diagonal_add_right_sourcetarget * S ((S (pfp_index_diagonal_add_right_source)) * cc) + (pfp_value_diagonal_add_right_source))) /\ ((((exists pfa_gap_diagonal_add_right_sourceoperationleft. pfa_gap_diagonal_add_right_sourceoperationleft + S (pfp_left_diagonal_add_right_source) = (p)) /\ (((exists pfa_gap_diagonal_add_right_sourceoperationright. pfa_gap_diagonal_add_right_sourceoperationright + S (pfp_right_diagonal_add_right_source) = (p)) /\ ((((exists pfa_gap_diagonal_add_right_sourceoperationresultbound. pfa_gap_diagonal_add_right_sourceoperationresultbound + S (pfp_value_diagonal_add_right_source) = (p)) /\ ((exists pfa_offset_left_diagonal_add_right_sourceoperationresultcongruence pfa_offset_right_diagonal_add_right_sourceoperationresultcongruence. ((pfp_left_diagonal_add_right_source) + (pfp_right_diagonal_add_right_source)) + (p) * pfa_offset_left_diagonal_add_right_sourceoperationresultcongruence = (pfp_value_diagonal_add_right_source) + (p) * pfa_offset_right_diagonal_add_right_sourceoperationresultcongruence)))))))))))))))) -> (forall pfc_index_diagonal_add_right_u. (exists pfa_gap_diagonal_add_right_ubound. pfa_gap_diagonal_add_right_ubound + S (pfc_index_diagonal_add_right_u) = (N)) -> exists pfc_value_diagonal_add_right_u. ((((exists ff_h_pfp_diagonal_add_right_uentry. ff_h_pfp_diagonal_add_right_uentry + S (pfc_value_diagonal_add_right_u) = S ((S (pfc_index_diagonal_add_right_u)) * uc)) /\ exists ff_q_pfp_diagonal_add_right_uentry. ub = ff_q_pfp_diagonal_add_right_uentry * S ((S (pfc_index_diagonal_add_right_u)) * uc) + (pfc_value_diagonal_add_right_u))) /\ ((exists pfc_complement_diagonal_add_right_uterm pfc_left_diagonal_add_right_uterm pfc_right_diagonal_add_right_uterm. (((pfc_index_diagonal_add_right_u)+pfc_complement_diagonal_add_right_uterm=(i)) /\ ((((((exists pfa_gap_diagonal_add_right_utermleftinside. pfa_gap_diagonal_add_right_utermleftinside + S (pfc_index_diagonal_add_right_u) = (L)) /\ ((((exists ff_h_pfp_diagonal_add_right_utermleftentry. ff_h_pfp_diagonal_add_right_utermleftentry + S (pfc_left_diagonal_add_right_uterm) = S ((S (pfc_index_diagonal_add_right_u)) * ac)) /\ exists ff_q_pfp_diagonal_add_right_utermleftentry. ab = ff_q_pfp_diagonal_add_right_utermleftentry * S ((S (pfc_index_diagonal_add_right_u)) * ac) + (pfc_left_diagonal_add_right_uterm)))))) \/ (((exists pfc_gap_diagonal_add_right_utermleftoutside. pfc_gap_diagonal_add_right_utermleftoutside+(L)=(pfc_index_diagonal_add_right_u)) /\ (((pfc_left_diagonal_add_right_uterm)=0))))) /\ ((((((exists pfa_gap_diagonal_add_right_utermrightinside. pfa_gap_diagonal_add_right_utermrightinside + S (pfc_complement_diagonal_add_right_uterm) = (M)) /\ ((((exists ff_h_pfp_diagonal_add_right_utermrightentry. ff_h_pfp_diagonal_add_right_utermrightentry + S (pfc_right_diagonal_add_right_uterm) = S ((S (pfc_complement_diagonal_add_right_uterm)) * dc)) /\ exists ff_q_pfp_diagonal_add_right_utermrightentry. db = ff_q_pfp_diagonal_add_right_utermrightentry * S ((S (pfc_complement_diagonal_add_right_uterm)) * dc) + (pfc_right_diagonal_add_right_uterm)))))) \/ (((exists pfc_gap_diagonal_add_right_utermrightoutside. pfc_gap_diagonal_add_right_utermrightoutside+(M)=(pfc_complement_diagonal_add_right_uterm)) /\ (((pfc_right_diagonal_add_right_uterm)=0))))) /\ (((pfc_value_diagonal_add_right_u)=pfc_left_diagonal_add_right_uterm*pfc_right_diagonal_add_right_uterm))))))))))) -> (exists fs_u_pfc_diagonal_add_right_sum_u fs_v_pfc_diagonal_add_right_sum_u. ((((exists fs_h_pfc_diagonal_add_right_sum_u_body_start. fs_h_pfc_diagonal_add_right_sum_u_body_start + S (0) = S ((S (0)) * fs_v_pfc_diagonal_add_right_sum_u)) /\ exists fs_q_pfc_diagonal_add_right_sum_u_body_start. fs_u_pfc_diagonal_add_right_sum_u = fs_q_pfc_diagonal_add_right_sum_u_body_start * S ((S (0)) * fs_v_pfc_diagonal_add_right_sum_u) + (0))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_u_body_terminal. fs_h_pfc_diagonal_add_right_sum_u_body_terminal + S (u) = S ((S (N)) * fs_v_pfc_diagonal_add_right_sum_u)) /\ exists fs_q_pfc_diagonal_add_right_sum_u_body_terminal. fs_u_pfc_diagonal_add_right_sum_u = fs_q_pfc_diagonal_add_right_sum_u_body_terminal * S ((S (N)) * fs_v_pfc_diagonal_add_right_sum_u) + (u))) /\ forall fs_i_pfc_diagonal_add_right_sum_u_body_steps. (exists fs_lt_pfc_diagonal_add_right_sum_u_body_steps_bound. fs_lt_pfc_diagonal_add_right_sum_u_body_steps_bound + S fs_i_pfc_diagonal_add_right_sum_u_body_steps = N) -> exists fs_a_pfc_diagonal_add_right_sum_u_body_steps fs_r_pfc_diagonal_add_right_sum_u_body_steps fs_s_pfc_diagonal_add_right_sum_u_body_steps. ((((exists fs_h_pfc_diagonal_add_right_sum_u_body_steps_summand. fs_h_pfc_diagonal_add_right_sum_u_body_steps_summand + S (fs_a_pfc_diagonal_add_right_sum_u_body_steps) = S ((S (fs_i_pfc_diagonal_add_right_sum_u_body_steps)) * uc)) /\ exists fs_q_pfc_diagonal_add_right_sum_u_body_steps_summand. ub = fs_q_pfc_diagonal_add_right_sum_u_body_steps_summand * S ((S (fs_i_pfc_diagonal_add_right_sum_u_body_steps)) * uc) + (fs_a_pfc_diagonal_add_right_sum_u_body_steps))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_u_body_steps_partial. fs_h_pfc_diagonal_add_right_sum_u_body_steps_partial + S (fs_r_pfc_diagonal_add_right_sum_u_body_steps) = S ((S (fs_i_pfc_diagonal_add_right_sum_u_body_steps)) * fs_v_pfc_diagonal_add_right_sum_u)) /\ exists fs_q_pfc_diagonal_add_right_sum_u_body_steps_partial. fs_u_pfc_diagonal_add_right_sum_u = fs_q_pfc_diagonal_add_right_sum_u_body_steps_partial * S ((S (fs_i_pfc_diagonal_add_right_sum_u_body_steps)) * fs_v_pfc_diagonal_add_right_sum_u) + (fs_r_pfc_diagonal_add_right_sum_u_body_steps))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_u_body_steps_successor. fs_h_pfc_diagonal_add_right_sum_u_body_steps_successor + S (fs_s_pfc_diagonal_add_right_sum_u_body_steps) = S ((S (S fs_i_pfc_diagonal_add_right_sum_u_body_steps)) * fs_v_pfc_diagonal_add_right_sum_u)) /\ exists fs_q_pfc_diagonal_add_right_sum_u_body_steps_successor. fs_u_pfc_diagonal_add_right_sum_u = fs_q_pfc_diagonal_add_right_sum_u_body_steps_successor * S ((S (S fs_i_pfc_diagonal_add_right_sum_u_body_steps)) * fs_v_pfc_diagonal_add_right_sum_u) + (fs_s_pfc_diagonal_add_right_sum_u_body_steps))) /\ fs_s_pfc_diagonal_add_right_sum_u_body_steps = fs_r_pfc_diagonal_add_right_sum_u_body_steps + fs_a_pfc_diagonal_add_right_sum_u_body_steps)))))) -> (forall pfc_index_diagonal_add_right_v. (exists pfa_gap_diagonal_add_right_vbound. pfa_gap_diagonal_add_right_vbound + S (pfc_index_diagonal_add_right_v) = (N)) -> exists pfc_value_diagonal_add_right_v. ((((exists ff_h_pfp_diagonal_add_right_ventry. ff_h_pfp_diagonal_add_right_ventry + S (pfc_value_diagonal_add_right_v) = S ((S (pfc_index_diagonal_add_right_v)) * vc)) /\ exists ff_q_pfp_diagonal_add_right_ventry. vb = ff_q_pfp_diagonal_add_right_ventry * S ((S (pfc_index_diagonal_add_right_v)) * vc) + (pfc_value_diagonal_add_right_v))) /\ ((exists pfc_complement_diagonal_add_right_vterm pfc_left_diagonal_add_right_vterm pfc_right_diagonal_add_right_vterm. (((pfc_index_diagonal_add_right_v)+pfc_complement_diagonal_add_right_vterm=(i)) /\ ((((((exists pfa_gap_diagonal_add_right_vtermleftinside. pfa_gap_diagonal_add_right_vtermleftinside + S (pfc_index_diagonal_add_right_v) = (L)) /\ ((((exists ff_h_pfp_diagonal_add_right_vtermleftentry. ff_h_pfp_diagonal_add_right_vtermleftentry + S (pfc_left_diagonal_add_right_vterm) = S ((S (pfc_index_diagonal_add_right_v)) * bc)) /\ exists ff_q_pfp_diagonal_add_right_vtermleftentry. bb = ff_q_pfp_diagonal_add_right_vtermleftentry * S ((S (pfc_index_diagonal_add_right_v)) * bc) + (pfc_left_diagonal_add_right_vterm)))))) \/ (((exists pfc_gap_diagonal_add_right_vtermleftoutside. pfc_gap_diagonal_add_right_vtermleftoutside+(L)=(pfc_index_diagonal_add_right_v)) /\ (((pfc_left_diagonal_add_right_vterm)=0))))) /\ ((((((exists pfa_gap_diagonal_add_right_vtermrightinside. pfa_gap_diagonal_add_right_vtermrightinside + S (pfc_complement_diagonal_add_right_vterm) = (M)) /\ ((((exists ff_h_pfp_diagonal_add_right_vtermrightentry. ff_h_pfp_diagonal_add_right_vtermrightentry + S (pfc_right_diagonal_add_right_vterm) = S ((S (pfc_complement_diagonal_add_right_vterm)) * dc)) /\ exists ff_q_pfp_diagonal_add_right_vtermrightentry. db = ff_q_pfp_diagonal_add_right_vtermrightentry * S ((S (pfc_complement_diagonal_add_right_vterm)) * dc) + (pfc_right_diagonal_add_right_vterm)))))) \/ (((exists pfc_gap_diagonal_add_right_vtermrightoutside. pfc_gap_diagonal_add_right_vtermrightoutside+(M)=(pfc_complement_diagonal_add_right_vterm)) /\ (((pfc_right_diagonal_add_right_vterm)=0))))) /\ (((pfc_value_diagonal_add_right_v)=pfc_left_diagonal_add_right_vterm*pfc_right_diagonal_add_right_vterm))))))))))) -> (exists fs_u_pfc_diagonal_add_right_sum_v fs_v_pfc_diagonal_add_right_sum_v. ((((exists fs_h_pfc_diagonal_add_right_sum_v_body_start. fs_h_pfc_diagonal_add_right_sum_v_body_start + S (0) = S ((S (0)) * fs_v_pfc_diagonal_add_right_sum_v)) /\ exists fs_q_pfc_diagonal_add_right_sum_v_body_start. fs_u_pfc_diagonal_add_right_sum_v = fs_q_pfc_diagonal_add_right_sum_v_body_start * S ((S (0)) * fs_v_pfc_diagonal_add_right_sum_v) + (0))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_v_body_terminal. fs_h_pfc_diagonal_add_right_sum_v_body_terminal + S (v) = S ((S (N)) * fs_v_pfc_diagonal_add_right_sum_v)) /\ exists fs_q_pfc_diagonal_add_right_sum_v_body_terminal. fs_u_pfc_diagonal_add_right_sum_v = fs_q_pfc_diagonal_add_right_sum_v_body_terminal * S ((S (N)) * fs_v_pfc_diagonal_add_right_sum_v) + (v))) /\ forall fs_i_pfc_diagonal_add_right_sum_v_body_steps. (exists fs_lt_pfc_diagonal_add_right_sum_v_body_steps_bound. fs_lt_pfc_diagonal_add_right_sum_v_body_steps_bound + S fs_i_pfc_diagonal_add_right_sum_v_body_steps = N) -> exists fs_a_pfc_diagonal_add_right_sum_v_body_steps fs_r_pfc_diagonal_add_right_sum_v_body_steps fs_s_pfc_diagonal_add_right_sum_v_body_steps. ((((exists fs_h_pfc_diagonal_add_right_sum_v_body_steps_summand. fs_h_pfc_diagonal_add_right_sum_v_body_steps_summand + S (fs_a_pfc_diagonal_add_right_sum_v_body_steps) = S ((S (fs_i_pfc_diagonal_add_right_sum_v_body_steps)) * vc)) /\ exists fs_q_pfc_diagonal_add_right_sum_v_body_steps_summand. vb = fs_q_pfc_diagonal_add_right_sum_v_body_steps_summand * S ((S (fs_i_pfc_diagonal_add_right_sum_v_body_steps)) * vc) + (fs_a_pfc_diagonal_add_right_sum_v_body_steps))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_v_body_steps_partial. fs_h_pfc_diagonal_add_right_sum_v_body_steps_partial + S (fs_r_pfc_diagonal_add_right_sum_v_body_steps) = S ((S (fs_i_pfc_diagonal_add_right_sum_v_body_steps)) * fs_v_pfc_diagonal_add_right_sum_v)) /\ exists fs_q_pfc_diagonal_add_right_sum_v_body_steps_partial. fs_u_pfc_diagonal_add_right_sum_v = fs_q_pfc_diagonal_add_right_sum_v_body_steps_partial * S ((S (fs_i_pfc_diagonal_add_right_sum_v_body_steps)) * fs_v_pfc_diagonal_add_right_sum_v) + (fs_r_pfc_diagonal_add_right_sum_v_body_steps))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_v_body_steps_successor. fs_h_pfc_diagonal_add_right_sum_v_body_steps_successor + S (fs_s_pfc_diagonal_add_right_sum_v_body_steps) = S ((S (S fs_i_pfc_diagonal_add_right_sum_v_body_steps)) * fs_v_pfc_diagonal_add_right_sum_v)) /\ exists fs_q_pfc_diagonal_add_right_sum_v_body_steps_successor. fs_u_pfc_diagonal_add_right_sum_v = fs_q_pfc_diagonal_add_right_sum_v_body_steps_successor * S ((S (S fs_i_pfc_diagonal_add_right_sum_v_body_steps)) * fs_v_pfc_diagonal_add_right_sum_v) + (fs_s_pfc_diagonal_add_right_sum_v_body_steps))) /\ fs_s_pfc_diagonal_add_right_sum_v_body_steps = fs_r_pfc_diagonal_add_right_sum_v_body_steps + fs_a_pfc_diagonal_add_right_sum_v_body_steps)))))) -> (forall pfc_index_diagonal_add_right_w. (exists pfa_gap_diagonal_add_right_wbound. pfa_gap_diagonal_add_right_wbound + S (pfc_index_diagonal_add_right_w) = (N)) -> exists pfc_value_diagonal_add_right_w. ((((exists ff_h_pfp_diagonal_add_right_wentry. ff_h_pfp_diagonal_add_right_wentry + S (pfc_value_diagonal_add_right_w) = S ((S (pfc_index_diagonal_add_right_w)) * wc)) /\ exists ff_q_pfp_diagonal_add_right_wentry. wb = ff_q_pfp_diagonal_add_right_wentry * S ((S (pfc_index_diagonal_add_right_w)) * wc) + (pfc_value_diagonal_add_right_w))) /\ ((exists pfc_complement_diagonal_add_right_wterm pfc_left_diagonal_add_right_wterm pfc_right_diagonal_add_right_wterm. (((pfc_index_diagonal_add_right_w)+pfc_complement_diagonal_add_right_wterm=(i)) /\ ((((((exists pfa_gap_diagonal_add_right_wtermleftinside. pfa_gap_diagonal_add_right_wtermleftinside + S (pfc_index_diagonal_add_right_w) = (L)) /\ ((((exists ff_h_pfp_diagonal_add_right_wtermleftentry. ff_h_pfp_diagonal_add_right_wtermleftentry + S (pfc_left_diagonal_add_right_wterm) = S ((S (pfc_index_diagonal_add_right_w)) * cc)) /\ exists ff_q_pfp_diagonal_add_right_wtermleftentry. cb = ff_q_pfp_diagonal_add_right_wtermleftentry * S ((S (pfc_index_diagonal_add_right_w)) * cc) + (pfc_left_diagonal_add_right_wterm)))))) \/ (((exists pfc_gap_diagonal_add_right_wtermleftoutside. pfc_gap_diagonal_add_right_wtermleftoutside+(L)=(pfc_index_diagonal_add_right_w)) /\ (((pfc_left_diagonal_add_right_wterm)=0))))) /\ ((((((exists pfa_gap_diagonal_add_right_wtermrightinside. pfa_gap_diagonal_add_right_wtermrightinside + S (pfc_complement_diagonal_add_right_wterm) = (M)) /\ ((((exists ff_h_pfp_diagonal_add_right_wtermrightentry. ff_h_pfp_diagonal_add_right_wtermrightentry + S (pfc_right_diagonal_add_right_wterm) = S ((S (pfc_complement_diagonal_add_right_wterm)) * dc)) /\ exists ff_q_pfp_diagonal_add_right_wtermrightentry. db = ff_q_pfp_diagonal_add_right_wtermrightentry * S ((S (pfc_complement_diagonal_add_right_wterm)) * dc) + (pfc_right_diagonal_add_right_wterm)))))) \/ (((exists pfc_gap_diagonal_add_right_wtermrightoutside. pfc_gap_diagonal_add_right_wtermrightoutside+(M)=(pfc_complement_diagonal_add_right_wterm)) /\ (((pfc_right_diagonal_add_right_wterm)=0))))) /\ (((pfc_value_diagonal_add_right_w)=pfc_left_diagonal_add_right_wterm*pfc_right_diagonal_add_right_wterm))))))))))) -> (exists fs_u_pfc_diagonal_add_right_sum_w fs_v_pfc_diagonal_add_right_sum_w. ((((exists fs_h_pfc_diagonal_add_right_sum_w_body_start. fs_h_pfc_diagonal_add_right_sum_w_body_start + S (0) = S ((S (0)) * fs_v_pfc_diagonal_add_right_sum_w)) /\ exists fs_q_pfc_diagonal_add_right_sum_w_body_start. fs_u_pfc_diagonal_add_right_sum_w = fs_q_pfc_diagonal_add_right_sum_w_body_start * S ((S (0)) * fs_v_pfc_diagonal_add_right_sum_w) + (0))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_w_body_terminal. fs_h_pfc_diagonal_add_right_sum_w_body_terminal + S (w) = S ((S (N)) * fs_v_pfc_diagonal_add_right_sum_w)) /\ exists fs_q_pfc_diagonal_add_right_sum_w_body_terminal. fs_u_pfc_diagonal_add_right_sum_w = fs_q_pfc_diagonal_add_right_sum_w_body_terminal * S ((S (N)) * fs_v_pfc_diagonal_add_right_sum_w) + (w))) /\ forall fs_i_pfc_diagonal_add_right_sum_w_body_steps. (exists fs_lt_pfc_diagonal_add_right_sum_w_body_steps_bound. fs_lt_pfc_diagonal_add_right_sum_w_body_steps_bound + S fs_i_pfc_diagonal_add_right_sum_w_body_steps = N) -> exists fs_a_pfc_diagonal_add_right_sum_w_body_steps fs_r_pfc_diagonal_add_right_sum_w_body_steps fs_s_pfc_diagonal_add_right_sum_w_body_steps. ((((exists fs_h_pfc_diagonal_add_right_sum_w_body_steps_summand. fs_h_pfc_diagonal_add_right_sum_w_body_steps_summand + S (fs_a_pfc_diagonal_add_right_sum_w_body_steps) = S ((S (fs_i_pfc_diagonal_add_right_sum_w_body_steps)) * wc)) /\ exists fs_q_pfc_diagonal_add_right_sum_w_body_steps_summand. wb = fs_q_pfc_diagonal_add_right_sum_w_body_steps_summand * S ((S (fs_i_pfc_diagonal_add_right_sum_w_body_steps)) * wc) + (fs_a_pfc_diagonal_add_right_sum_w_body_steps))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_w_body_steps_partial. fs_h_pfc_diagonal_add_right_sum_w_body_steps_partial + S (fs_r_pfc_diagonal_add_right_sum_w_body_steps) = S ((S (fs_i_pfc_diagonal_add_right_sum_w_body_steps)) * fs_v_pfc_diagonal_add_right_sum_w)) /\ exists fs_q_pfc_diagonal_add_right_sum_w_body_steps_partial. fs_u_pfc_diagonal_add_right_sum_w = fs_q_pfc_diagonal_add_right_sum_w_body_steps_partial * S ((S (fs_i_pfc_diagonal_add_right_sum_w_body_steps)) * fs_v_pfc_diagonal_add_right_sum_w) + (fs_r_pfc_diagonal_add_right_sum_w_body_steps))) /\ ((((exists fs_h_pfc_diagonal_add_right_sum_w_body_steps_successor. fs_h_pfc_diagonal_add_right_sum_w_body_steps_successor + S (fs_s_pfc_diagonal_add_right_sum_w_body_steps) = S ((S (S fs_i_pfc_diagonal_add_right_sum_w_body_steps)) * fs_v_pfc_diagonal_add_right_sum_w)) /\ exists fs_q_pfc_diagonal_add_right_sum_w_body_steps_successor. fs_u_pfc_diagonal_add_right_sum_w = fs_q_pfc_diagonal_add_right_sum_w_body_steps_successor * S ((S (S fs_i_pfc_diagonal_add_right_sum_w_body_steps)) * fs_v_pfc_diagonal_add_right_sum_w) + (fs_s_pfc_diagonal_add_right_sum_w_body_steps))) /\ fs_s_pfc_diagonal_add_right_sum_w_body_steps = fs_r_pfc_diagonal_add_right_sum_w_body_steps + fs_a_pfc_diagonal_add_right_sum_w_body_steps)))))) -> (exists pfa_offset_left_diagonal_add_right_result pfa_offset_right_diagonal_add_right_result. (u+v) + (p) * pfa_offset_left_diagonal_add_right_result = (w) + (p) * pfa_offset_right_diagonal_add_right_result)

Constructive proof overview

Generated structural guide

The three independently beta-coded actual antidiagonal sums obey right additive congruence, including empty sum prefixes and with no raw-code equality.

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

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

Proof neighborhood

Direct dependencies

PX0040 beta_sum_pointwise_mod_add PX0043 polynomial_diagonal_term_right_add_congruent polynomial_diagonal_prefix_entry Alpha theorem; checked-use authorized

Direct dependents

Formal native tactic body

Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.

Read the argument

Proof checkpoints

118 script commands · 13 reading checkpoints · 0 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.

Named ingredients (2)
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 bb
  5. L5
    intro bc
  6. L6
    intro cb
  7. L7
    intro cc
  8. L8
    intro L
  9. L9
    intro db
  10. L10
    intro dc
02Fix variables and assumptionsL11–20

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

  1. L11
    intro M
  2. L12
    intro i
  3. L13
    intro N
  4. L14
    intro ub
  5. L15
    intro uc
  6. L16
    intro vb
  7. L17
    intro vc
  8. L18
    intro wb
  9. L19
    intro wc
  10. L20
    intro u
03Fix variables and assumptionsL21–29

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

  1. L21
    intro v
  2. L22
    intro w
  3. L23
    intro hs
  4. L24
    intro hdu
  5. L25
    intro hsv
  6. L26
    intro hdv
  7. L27
    intro hsvv
  8. L28
    intro hdw
  9. L29
    intro hsw
04Use earlier factsL30–39

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

  1. L30
    specialize beta_sum_pointwise_mod_add (p)
  2. L31
    specialize beta_sum_pointwise_mod_add (ub)
  3. L32
    specialize beta_sum_pointwise_mod_add (uc)
  4. L33
    specialize beta_sum_pointwise_mod_add (vb)
  5. L34
    specialize beta_sum_pointwise_mod_add (vc)
  6. L35
    specialize beta_sum_pointwise_mod_add (wb)
  7. L36
    specialize beta_sum_pointwise_mod_add (wc)
  8. L37
    specialize beta_sum_pointwise_mod_add (N)
  9. L38
    specialize beta_sum_pointwise_mod_add (u)
  10. L39
    specialize beta_sum_pointwise_mod_add (v)
05Use earlier factsL40–44

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

  1. L40
    specialize beta_sum_pointwise_mod_add (w)
  2. L41
    apply beta_sum_pointwise_mod_add
  3. L42
    exact hsv
  4. L43
    exact hsvv
  5. L44
    exact hsw
06Fix variables and assumptionsL45–52

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

  1. L45
    intro j
  2. L46
    intro a
  3. L47
    intro b
  4. L48
    intro c
  5. L49
    intro hj
  6. L50
    intro ha
  7. L51
    intro hb
  8. L52
    intro hc
07Use earlier factsL53–62

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

  1. L53
    specialize polynomial_diagonal_term_right_add_congruent (p)
  2. L54
    specialize polynomial_diagonal_term_right_add_congruent (ab)
  3. L55
    specialize polynomial_diagonal_term_right_add_congruent (ac)
  4. L56
    specialize polynomial_diagonal_term_right_add_congruent (bb)
  5. L57
    specialize polynomial_diagonal_term_right_add_congruent (bc)
  6. L58
    specialize polynomial_diagonal_term_right_add_congruent (cb)
  7. L59
    specialize polynomial_diagonal_term_right_add_congruent (cc)
  8. L60
    specialize polynomial_diagonal_term_right_add_congruent (L)
  9. L61
    specialize polynomial_diagonal_term_right_add_congruent (db)
  10. L62
    specialize polynomial_diagonal_term_right_add_congruent (dc)
08Use earlier factsL63–72

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

  1. L63
    specialize polynomial_diagonal_term_right_add_congruent (M)
  2. L64
    specialize polynomial_diagonal_term_right_add_congruent (i)
  3. L65
    specialize polynomial_diagonal_term_right_add_congruent (j)
  4. L66
    specialize polynomial_diagonal_term_right_add_congruent (a)
  5. L67
    specialize polynomial_diagonal_term_right_add_congruent (b)
  6. L68
    specialize polynomial_diagonal_term_right_add_congruent (c)
  7. L69
    apply polynomial_diagonal_term_right_add_congruent
  8. L70
    exact hs
  9. L71
    specialize polynomial_diagonal_prefix_entry (ab)
  10. L72
    specialize polynomial_diagonal_prefix_entry (ac)
09Use earlier factsL73–82

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

  1. L73
    specialize polynomial_diagonal_prefix_entry (L)
  2. L74
    specialize polynomial_diagonal_prefix_entry (db)
  3. L75
    specialize polynomial_diagonal_prefix_entry (dc)
  4. L76
    specialize polynomial_diagonal_prefix_entry (M)
  5. L77
    specialize polynomial_diagonal_prefix_entry (i)
  6. L78
    specialize polynomial_diagonal_prefix_entry (ub)
  7. L79
    specialize polynomial_diagonal_prefix_entry (uc)
  8. L80
    specialize polynomial_diagonal_prefix_entry (N)
  9. L81
    specialize polynomial_diagonal_prefix_entry (j)
  10. L82
    specialize polynomial_diagonal_prefix_entry (a)
10Use earlier factsL83–92

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

  1. L83
    apply polynomial_diagonal_prefix_entry
  2. L84
    exact hdu
  3. L85
    exact hj
  4. L86
    exact ha
  5. L87
    specialize polynomial_diagonal_prefix_entry (bb)
  6. L88
    specialize polynomial_diagonal_prefix_entry (bc)
  7. L89
    specialize polynomial_diagonal_prefix_entry (L)
  8. L90
    specialize polynomial_diagonal_prefix_entry (db)
  9. L91
    specialize polynomial_diagonal_prefix_entry (dc)
  10. L92
    specialize polynomial_diagonal_prefix_entry (M)
11Use earlier factsL93–102

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

  1. L93
    specialize polynomial_diagonal_prefix_entry (i)
  2. L94
    specialize polynomial_diagonal_prefix_entry (vb)
  3. L95
    specialize polynomial_diagonal_prefix_entry (vc)
  4. L96
    specialize polynomial_diagonal_prefix_entry (N)
  5. L97
    specialize polynomial_diagonal_prefix_entry (j)
  6. L98
    specialize polynomial_diagonal_prefix_entry (b)
  7. L99
    apply polynomial_diagonal_prefix_entry
  8. L100
    exact hdv
  9. L101
    exact hj
  10. L102
    exact hb
12Use earlier factsL103–112

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

  1. L103
    specialize polynomial_diagonal_prefix_entry (cb)
  2. L104
    specialize polynomial_diagonal_prefix_entry (cc)
  3. L105
    specialize polynomial_diagonal_prefix_entry (L)
  4. L106
    specialize polynomial_diagonal_prefix_entry (db)
  5. L107
    specialize polynomial_diagonal_prefix_entry (dc)
  6. L108
    specialize polynomial_diagonal_prefix_entry (M)
  7. L109
    specialize polynomial_diagonal_prefix_entry (i)
  8. L110
    specialize polynomial_diagonal_prefix_entry (wb)
  9. L111
    specialize polynomial_diagonal_prefix_entry (wc)
  10. L112
    specialize polynomial_diagonal_prefix_entry (N)
13Use earlier factsL113–118

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

  1. L113
    specialize polynomial_diagonal_prefix_entry (j)
  2. L114
    specialize polynomial_diagonal_prefix_entry (c)
  3. L115
    apply polynomial_diagonal_prefix_entry
  4. L116
    exact hdw
  5. L117
    exact hj
  6. L118
    exact hc

Library-wide reading audit

Original exact command ledger · 118 lines
  1. 0001intro p
  2. 0002intro ab
  3. 0003intro ac
  4. 0004intro bb
  5. 0005intro bc
  6. 0006intro cb
  7. 0007intro cc
  8. 0008intro L
  9. 0009intro db
  10. 0010intro dc
  11. 0011intro M
  12. 0012intro i
  13. 0013intro N
  14. 0014intro ub
  15. 0015intro uc
  16. 0016intro vb
  17. 0017intro vc
  18. 0018intro wb
  19. 0019intro wc
  20. 0020intro u
  21. 0021intro v
  22. 0022intro w
  23. 0023intro hs
  24. 0024intro hdu
  25. 0025intro hsv
  26. 0026intro hdv
  27. 0027intro hsvv
  28. 0028intro hdw
  29. 0029intro hsw
  30. 0030specialize beta_sum_pointwise_mod_add (p)
  31. 0031specialize beta_sum_pointwise_mod_add (ub)
  32. 0032specialize beta_sum_pointwise_mod_add (uc)
  33. 0033specialize beta_sum_pointwise_mod_add (vb)
  34. 0034specialize beta_sum_pointwise_mod_add (vc)
  35. 0035specialize beta_sum_pointwise_mod_add (wb)
  36. 0036specialize beta_sum_pointwise_mod_add (wc)
  37. 0037specialize beta_sum_pointwise_mod_add (N)
  38. 0038specialize beta_sum_pointwise_mod_add (u)
  39. 0039specialize beta_sum_pointwise_mod_add (v)
  40. 0040specialize beta_sum_pointwise_mod_add (w)
  41. 0041apply beta_sum_pointwise_mod_add
  42. 0042exact hsv
  43. 0043exact hsvv
  44. 0044exact hsw
  45. 0045intro j
  46. 0046intro a
  47. 0047intro b
  48. 0048intro c
  49. 0049intro hj
  50. 0050intro ha
  51. 0051intro hb
  52. 0052intro hc
  53. 0053specialize polynomial_diagonal_term_right_add_congruent (p)
  54. 0054specialize polynomial_diagonal_term_right_add_congruent (ab)
  55. 0055specialize polynomial_diagonal_term_right_add_congruent (ac)
  56. 0056specialize polynomial_diagonal_term_right_add_congruent (bb)
  57. 0057specialize polynomial_diagonal_term_right_add_congruent (bc)
  58. 0058specialize polynomial_diagonal_term_right_add_congruent (cb)
  59. 0059specialize polynomial_diagonal_term_right_add_congruent (cc)
  60. 0060specialize polynomial_diagonal_term_right_add_congruent (L)
  61. 0061specialize polynomial_diagonal_term_right_add_congruent (db)
  62. 0062specialize polynomial_diagonal_term_right_add_congruent (dc)
  63. 0063specialize polynomial_diagonal_term_right_add_congruent (M)
  64. 0064specialize polynomial_diagonal_term_right_add_congruent (i)
  65. 0065specialize polynomial_diagonal_term_right_add_congruent (j)
  66. 0066specialize polynomial_diagonal_term_right_add_congruent (a)
  67. 0067specialize polynomial_diagonal_term_right_add_congruent (b)
  68. 0068specialize polynomial_diagonal_term_right_add_congruent (c)
  69. 0069apply polynomial_diagonal_term_right_add_congruent
  70. 0070exact hs
  71. 0071specialize polynomial_diagonal_prefix_entry (ab)
  72. 0072specialize polynomial_diagonal_prefix_entry (ac)
  73. 0073specialize polynomial_diagonal_prefix_entry (L)
  74. 0074specialize polynomial_diagonal_prefix_entry (db)
  75. 0075specialize polynomial_diagonal_prefix_entry (dc)
  76. 0076specialize polynomial_diagonal_prefix_entry (M)
  77. 0077specialize polynomial_diagonal_prefix_entry (i)
  78. 0078specialize polynomial_diagonal_prefix_entry (ub)
  79. 0079specialize polynomial_diagonal_prefix_entry (uc)
  80. 0080specialize polynomial_diagonal_prefix_entry (N)
  81. 0081specialize polynomial_diagonal_prefix_entry (j)
  82. 0082specialize polynomial_diagonal_prefix_entry (a)
  83. 0083apply polynomial_diagonal_prefix_entry
  84. 0084exact hdu
  85. 0085exact hj
  86. 0086exact ha
  87. 0087specialize polynomial_diagonal_prefix_entry (bb)
  88. 0088specialize polynomial_diagonal_prefix_entry (bc)
  89. 0089specialize polynomial_diagonal_prefix_entry (L)
  90. 0090specialize polynomial_diagonal_prefix_entry (db)
  91. 0091specialize polynomial_diagonal_prefix_entry (dc)
  92. 0092specialize polynomial_diagonal_prefix_entry (M)
  93. 0093specialize polynomial_diagonal_prefix_entry (i)
  94. 0094specialize polynomial_diagonal_prefix_entry (vb)
  95. 0095specialize polynomial_diagonal_prefix_entry (vc)
  96. 0096specialize polynomial_diagonal_prefix_entry (N)
  97. 0097specialize polynomial_diagonal_prefix_entry (j)
  98. 0098specialize polynomial_diagonal_prefix_entry (b)
  99. 0099apply polynomial_diagonal_prefix_entry
  100. 0100exact hdv
  101. 0101exact hj
  102. 0102exact hb
  103. 0103specialize polynomial_diagonal_prefix_entry (cb)
  104. 0104specialize polynomial_diagonal_prefix_entry (cc)
  105. 0105specialize polynomial_diagonal_prefix_entry (L)
  106. 0106specialize polynomial_diagonal_prefix_entry (db)
  107. 0107specialize polynomial_diagonal_prefix_entry (dc)
  108. 0108specialize polynomial_diagonal_prefix_entry (M)
  109. 0109specialize polynomial_diagonal_prefix_entry (i)
  110. 0110specialize polynomial_diagonal_prefix_entry (wb)
  111. 0111specialize polynomial_diagonal_prefix_entry (wc)
  112. 0112specialize polynomial_diagonal_prefix_entry (N)
  113. 0113specialize polynomial_diagonal_prefix_entry (j)
  114. 0114specialize polynomial_diagonal_prefix_entry (c)
  115. 0115apply polynomial_diagonal_prefix_entry
  116. 0116exact hdw
  117. 0117exact hj
  118. 0118exact hc