DL0077

integer_matrix_vector_product_exists

Every finite signed coefficient vector has a fully constructed matrix-vector image as represented integers; the output is an actual coded signed product.

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

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

This branch proves the finite determinant/rank/span substrate. It does not claim Smith or Hermite normal form, lattice index equals determinant, determinant multiplicativity, lattice reduction, or geometry-of-numbers theorems.

Exact theorem in conservative defined notation

∀ ab. ∀ ac. ∀ db. ∀ dc. ∀ eb. ∀ ec. ∀ fb. ∀ fc. ∀ w. ∀ r. ∃ pb. ∃ pc. ∃ nb. ∃ nc. IntegerMatrixVectorProduct(ab,ac,db,dc,eb,ec,fb,fc,w,r,pb,pc,nb,nc)

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

Definition DAG

Actual proof prerequisites

beta_signed_matrix_product_exists · checked external prerequisiteinteger_vector_equal_reflexive
Original expanded first-order statement
forall ab ac db dc eb ec fb fc w r. exists pb pc nb nc. (exists ics_raw_positive_linear_exists ics_raw_positive_scale_linear_exists ics_raw_negative_linear_exists ics_raw_negative_scale_linear_exists. (((exists ff_pp_mcp_smatrix_ics_linear_exists_raw ff_pps_mcp_smatrix_ics_linear_exists_raw ff_nn_mcp_smatrix_ics_linear_exists_raw ff_nns_mcp_smatrix_ics_linear_exists_raw ff_pn_mcp_smatrix_ics_linear_exists_raw ff_pns_mcp_smatrix_ics_linear_exists_raw ff_np_mcp_smatrix_ics_linear_exists_raw ff_nps_mcp_smatrix_ics_linear_exists_raw. ((forall ff_index_mcp_prefix_ics_linear_exists_raw_pp. (exists mcp_gap_ics_linear_exists_raw_pp_index. mcp_gap_ics_linear_exists_raw_pp_index + S (ff_index_mcp_prefix_ics_linear_exists_raw_pp) = ((r) * (1))) -> exists ff_row_mcp_prefix_ics_linear_exists_raw_pp ff_column_mcp_prefix_ics_linear_exists_raw_pp ff_value_mcp_prefix_ics_linear_exists_raw_pp. ((ff_index_mcp_prefix_ics_linear_exists_raw_pp) = (1) * ff_row_mcp_prefix_ics_linear_exists_raw_pp + ff_column_mcp_prefix_ics_linear_exists_raw_pp /\ ((exists mcp_gap_ics_linear_exists_raw_pp_column. mcp_gap_ics_linear_exists_raw_pp_column + S (ff_column_mcp_prefix_ics_linear_exists_raw_pp) = (1)) /\ ((exists ff_left_mcp_cell_ics_linear_exists_raw_pp_cell ff_left_scale_mcp_cell_ics_linear_exists_raw_pp_cell ff_right_mcp_cell_ics_linear_exists_raw_pp_cell ff_right_scale_mcp_cell_ics_linear_exists_raw_pp_cell. ((forall ff_index_mcp_ics_linear_exists_raw_pp_cell_row ff_source_mcp_ics_linear_exists_raw_pp_cell_row ff_target_mcp_ics_linear_exists_raw_pp_cell_row. (exists mcp_gap_ics_linear_exists_raw_pp_cell_row_bound. mcp_gap_ics_linear_exists_raw_pp_cell_row_bound + S (ff_index_mcp_ics_linear_exists_raw_pp_cell_row) = (w)) -> (((exists fs_h_mcp_ics_linear_exists_raw_pp_cell_row_source. fs_h_mcp_ics_linear_exists_raw_pp_cell_row_source + S (ff_source_mcp_ics_linear_exists_raw_pp_cell_row) = S ((S (((ff_row_mcp_prefix_ics_linear_exists_raw_pp) * (w)) + (1) * ff_index_mcp_ics_linear_exists_raw_pp_cell_row)) * ac)) /\ exists fs_q_mcp_ics_linear_exists_raw_pp_cell_row_source. ab = fs_q_mcp_ics_linear_exists_raw_pp_cell_row_source * S ((S (((ff_row_mcp_prefix_ics_linear_exists_raw_pp) * (w)) + (1) * ff_index_mcp_ics_linear_exists_raw_pp_cell_row)) * ac) + (ff_source_mcp_ics_linear_exists_raw_pp_cell_row))) -> (((exists fs_h_mcp_ics_linear_exists_raw_pp_cell_row_target. fs_h_mcp_ics_linear_exists_raw_pp_cell_row_target + S (ff_target_mcp_ics_linear_exists_raw_pp_cell_row) = S ((S (ff_index_mcp_ics_linear_exists_raw_pp_cell_row)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_pp_cell)) /\ exists fs_q_mcp_ics_linear_exists_raw_pp_cell_row_target. ff_left_mcp_cell_ics_linear_exists_raw_pp_cell = fs_q_mcp_ics_linear_exists_raw_pp_cell_row_target * S ((S (ff_index_mcp_ics_linear_exists_raw_pp_cell_row)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_pp_cell) + (ff_target_mcp_ics_linear_exists_raw_pp_cell_row))) -> ff_target_mcp_ics_linear_exists_raw_pp_cell_row = ff_source_mcp_ics_linear_exists_raw_pp_cell_row) /\ ((forall ff_index_mcp_ics_linear_exists_raw_pp_cell_column ff_source_mcp_ics_linear_exists_raw_pp_cell_column ff_target_mcp_ics_linear_exists_raw_pp_cell_column. (exists mcp_gap_ics_linear_exists_raw_pp_cell_column_bound. mcp_gap_ics_linear_exists_raw_pp_cell_column_bound + S (ff_index_mcp_ics_linear_exists_raw_pp_cell_column) = (w)) -> (((exists fs_h_mcp_ics_linear_exists_raw_pp_cell_column_source. fs_h_mcp_ics_linear_exists_raw_pp_cell_column_source + S (ff_source_mcp_ics_linear_exists_raw_pp_cell_column) = S ((S ((ff_column_mcp_prefix_ics_linear_exists_raw_pp) + (1) * ff_index_mcp_ics_linear_exists_raw_pp_cell_column)) * ec)) /\ exists fs_q_mcp_ics_linear_exists_raw_pp_cell_column_source. eb = fs_q_mcp_ics_linear_exists_raw_pp_cell_column_source * S ((S ((ff_column_mcp_prefix_ics_linear_exists_raw_pp) + (1) * ff_index_mcp_ics_linear_exists_raw_pp_cell_column)) * ec) + (ff_source_mcp_ics_linear_exists_raw_pp_cell_column))) -> (((exists fs_h_mcp_ics_linear_exists_raw_pp_cell_column_target. fs_h_mcp_ics_linear_exists_raw_pp_cell_column_target + S (ff_target_mcp_ics_linear_exists_raw_pp_cell_column) = S ((S (ff_index_mcp_ics_linear_exists_raw_pp_cell_column)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_pp_cell)) /\ exists fs_q_mcp_ics_linear_exists_raw_pp_cell_column_target. ff_right_mcp_cell_ics_linear_exists_raw_pp_cell = fs_q_mcp_ics_linear_exists_raw_pp_cell_column_target * S ((S (ff_index_mcp_ics_linear_exists_raw_pp_cell_column)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_pp_cell) + (ff_target_mcp_ics_linear_exists_raw_pp_cell_column))) -> ff_target_mcp_ics_linear_exists_raw_pp_cell_column = ff_source_mcp_ics_linear_exists_raw_pp_cell_column) /\ (exists ff_code_dot_mcp_ics_linear_exists_raw_pp_cell_dot ff_scale_dot_mcp_ics_linear_exists_raw_pp_cell_dot. ((forall fpmp_index_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise fpmp_left_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise fpmp_right_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise fpmp_target_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise. (exists fpmp_gap_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise. fpmp_gap_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise + S fpmp_index_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise = w) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_left. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_left + S (fpmp_left_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_pp_cell)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_left. ff_left_mcp_cell_ics_linear_exists_raw_pp_cell = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_left * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_pp_cell) + (fpmp_left_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_right. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_right + S (fpmp_right_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_pp_cell)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_right. ff_right_mcp_cell_ics_linear_exists_raw_pp_cell = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_right * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_pp_cell) + (fpmp_right_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_target. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_target + S (fpmp_target_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise)) * ff_scale_dot_mcp_ics_linear_exists_raw_pp_cell_dot)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_target. ff_code_dot_mcp_ics_linear_exists_raw_pp_cell_dot = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise_target * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise)) * ff_scale_dot_mcp_ics_linear_exists_raw_pp_cell_dot) + (fpmp_target_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise))) -> fpmp_target_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise = fpmp_left_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise * fpmp_right_dot_mcp_ics_linear_exists_raw_pp_cell_dot_pointwise) /\ (exists ff_u_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum. ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_start. ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_start + S (0) = S ((S (0)) * ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_start. ff_u_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_start * S ((S (0)) * ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum) + (0))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_terminal. ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_terminal + S (ff_value_mcp_prefix_ics_linear_exists_raw_pp) = S ((S (w)) * ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_terminal. ff_u_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_terminal * S ((S (w)) * ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum) + (ff_value_mcp_prefix_ics_linear_exists_raw_pp))) /\ forall ff_i_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum. (exists ff_lt_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_bound. ff_lt_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_bound + S ff_i_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum = w) -> exists ff_a_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum ff_r_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum ff_s_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum. ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_summand. ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_summand + S (ff_a_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum) = S ((S (ff_i_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) * ff_scale_dot_mcp_ics_linear_exists_raw_pp_cell_dot)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_summand. ff_code_dot_mcp_ics_linear_exists_raw_pp_cell_dot = ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_summand * S ((S (ff_i_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) * ff_scale_dot_mcp_ics_linear_exists_raw_pp_cell_dot) + (ff_a_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_partial. ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_partial + S (ff_r_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum) = S ((S (ff_i_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_partial. ff_u_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_partial * S ((S (ff_i_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum) + (ff_r_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_successor. ff_h_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_successor + S (ff_s_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum) = S ((S (S ff_i_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_successor. ff_u_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum_successor * S ((S (S ff_i_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum) + (ff_s_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum))) /\ ff_s_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum = ff_r_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum + ff_a_dot_mcp_ics_linear_exists_raw_pp_cell_dot_sum))))))))))) /\ (((exists fs_h_mcp_ics_linear_exists_raw_pp_entry. fs_h_mcp_ics_linear_exists_raw_pp_entry + S (ff_value_mcp_prefix_ics_linear_exists_raw_pp) = S ((S (ff_index_mcp_prefix_ics_linear_exists_raw_pp)) * ff_pps_mcp_smatrix_ics_linear_exists_raw)) /\ exists fs_q_mcp_ics_linear_exists_raw_pp_entry. ff_pp_mcp_smatrix_ics_linear_exists_raw = fs_q_mcp_ics_linear_exists_raw_pp_entry * S ((S (ff_index_mcp_prefix_ics_linear_exists_raw_pp)) * ff_pps_mcp_smatrix_ics_linear_exists_raw) + (ff_value_mcp_prefix_ics_linear_exists_raw_pp))))))) /\ ((forall ff_index_mcp_prefix_ics_linear_exists_raw_nn. (exists mcp_gap_ics_linear_exists_raw_nn_index. mcp_gap_ics_linear_exists_raw_nn_index + S (ff_index_mcp_prefix_ics_linear_exists_raw_nn) = ((r) * (1))) -> exists ff_row_mcp_prefix_ics_linear_exists_raw_nn ff_column_mcp_prefix_ics_linear_exists_raw_nn ff_value_mcp_prefix_ics_linear_exists_raw_nn. ((ff_index_mcp_prefix_ics_linear_exists_raw_nn) = (1) * ff_row_mcp_prefix_ics_linear_exists_raw_nn + ff_column_mcp_prefix_ics_linear_exists_raw_nn /\ ((exists mcp_gap_ics_linear_exists_raw_nn_column. mcp_gap_ics_linear_exists_raw_nn_column + S (ff_column_mcp_prefix_ics_linear_exists_raw_nn) = (1)) /\ ((exists ff_left_mcp_cell_ics_linear_exists_raw_nn_cell ff_left_scale_mcp_cell_ics_linear_exists_raw_nn_cell ff_right_mcp_cell_ics_linear_exists_raw_nn_cell ff_right_scale_mcp_cell_ics_linear_exists_raw_nn_cell. ((forall ff_index_mcp_ics_linear_exists_raw_nn_cell_row ff_source_mcp_ics_linear_exists_raw_nn_cell_row ff_target_mcp_ics_linear_exists_raw_nn_cell_row. (exists mcp_gap_ics_linear_exists_raw_nn_cell_row_bound. mcp_gap_ics_linear_exists_raw_nn_cell_row_bound + S (ff_index_mcp_ics_linear_exists_raw_nn_cell_row) = (w)) -> (((exists fs_h_mcp_ics_linear_exists_raw_nn_cell_row_source. fs_h_mcp_ics_linear_exists_raw_nn_cell_row_source + S (ff_source_mcp_ics_linear_exists_raw_nn_cell_row) = S ((S (((ff_row_mcp_prefix_ics_linear_exists_raw_nn) * (w)) + (1) * ff_index_mcp_ics_linear_exists_raw_nn_cell_row)) * dc)) /\ exists fs_q_mcp_ics_linear_exists_raw_nn_cell_row_source. db = fs_q_mcp_ics_linear_exists_raw_nn_cell_row_source * S ((S (((ff_row_mcp_prefix_ics_linear_exists_raw_nn) * (w)) + (1) * ff_index_mcp_ics_linear_exists_raw_nn_cell_row)) * dc) + (ff_source_mcp_ics_linear_exists_raw_nn_cell_row))) -> (((exists fs_h_mcp_ics_linear_exists_raw_nn_cell_row_target. fs_h_mcp_ics_linear_exists_raw_nn_cell_row_target + S (ff_target_mcp_ics_linear_exists_raw_nn_cell_row) = S ((S (ff_index_mcp_ics_linear_exists_raw_nn_cell_row)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_nn_cell)) /\ exists fs_q_mcp_ics_linear_exists_raw_nn_cell_row_target. ff_left_mcp_cell_ics_linear_exists_raw_nn_cell = fs_q_mcp_ics_linear_exists_raw_nn_cell_row_target * S ((S (ff_index_mcp_ics_linear_exists_raw_nn_cell_row)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_nn_cell) + (ff_target_mcp_ics_linear_exists_raw_nn_cell_row))) -> ff_target_mcp_ics_linear_exists_raw_nn_cell_row = ff_source_mcp_ics_linear_exists_raw_nn_cell_row) /\ ((forall ff_index_mcp_ics_linear_exists_raw_nn_cell_column ff_source_mcp_ics_linear_exists_raw_nn_cell_column ff_target_mcp_ics_linear_exists_raw_nn_cell_column. (exists mcp_gap_ics_linear_exists_raw_nn_cell_column_bound. mcp_gap_ics_linear_exists_raw_nn_cell_column_bound + S (ff_index_mcp_ics_linear_exists_raw_nn_cell_column) = (w)) -> (((exists fs_h_mcp_ics_linear_exists_raw_nn_cell_column_source. fs_h_mcp_ics_linear_exists_raw_nn_cell_column_source + S (ff_source_mcp_ics_linear_exists_raw_nn_cell_column) = S ((S ((ff_column_mcp_prefix_ics_linear_exists_raw_nn) + (1) * ff_index_mcp_ics_linear_exists_raw_nn_cell_column)) * fc)) /\ exists fs_q_mcp_ics_linear_exists_raw_nn_cell_column_source. fb = fs_q_mcp_ics_linear_exists_raw_nn_cell_column_source * S ((S ((ff_column_mcp_prefix_ics_linear_exists_raw_nn) + (1) * ff_index_mcp_ics_linear_exists_raw_nn_cell_column)) * fc) + (ff_source_mcp_ics_linear_exists_raw_nn_cell_column))) -> (((exists fs_h_mcp_ics_linear_exists_raw_nn_cell_column_target. fs_h_mcp_ics_linear_exists_raw_nn_cell_column_target + S (ff_target_mcp_ics_linear_exists_raw_nn_cell_column) = S ((S (ff_index_mcp_ics_linear_exists_raw_nn_cell_column)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_nn_cell)) /\ exists fs_q_mcp_ics_linear_exists_raw_nn_cell_column_target. ff_right_mcp_cell_ics_linear_exists_raw_nn_cell = fs_q_mcp_ics_linear_exists_raw_nn_cell_column_target * S ((S (ff_index_mcp_ics_linear_exists_raw_nn_cell_column)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_nn_cell) + (ff_target_mcp_ics_linear_exists_raw_nn_cell_column))) -> ff_target_mcp_ics_linear_exists_raw_nn_cell_column = ff_source_mcp_ics_linear_exists_raw_nn_cell_column) /\ (exists ff_code_dot_mcp_ics_linear_exists_raw_nn_cell_dot ff_scale_dot_mcp_ics_linear_exists_raw_nn_cell_dot. ((forall fpmp_index_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise fpmp_left_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise fpmp_right_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise fpmp_target_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise. (exists fpmp_gap_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise. fpmp_gap_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise + S fpmp_index_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise = w) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_left. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_left + S (fpmp_left_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_nn_cell)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_left. ff_left_mcp_cell_ics_linear_exists_raw_nn_cell = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_left * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_nn_cell) + (fpmp_left_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_right. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_right + S (fpmp_right_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_nn_cell)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_right. ff_right_mcp_cell_ics_linear_exists_raw_nn_cell = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_right * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_nn_cell) + (fpmp_right_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_target. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_target + S (fpmp_target_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise)) * ff_scale_dot_mcp_ics_linear_exists_raw_nn_cell_dot)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_target. ff_code_dot_mcp_ics_linear_exists_raw_nn_cell_dot = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise_target * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise)) * ff_scale_dot_mcp_ics_linear_exists_raw_nn_cell_dot) + (fpmp_target_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise))) -> fpmp_target_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise = fpmp_left_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise * fpmp_right_dot_mcp_ics_linear_exists_raw_nn_cell_dot_pointwise) /\ (exists ff_u_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum. ((((exists ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_start. ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_start + S (0) = S ((S (0)) * ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_start. ff_u_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_start * S ((S (0)) * ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum) + (0))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_terminal. ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_terminal + S (ff_value_mcp_prefix_ics_linear_exists_raw_nn) = S ((S (w)) * ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_terminal. ff_u_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_terminal * S ((S (w)) * ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum) + (ff_value_mcp_prefix_ics_linear_exists_raw_nn))) /\ forall ff_i_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum. (exists ff_lt_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_bound. ff_lt_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_bound + S ff_i_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum = w) -> exists ff_a_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum ff_r_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum ff_s_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum. ((((exists ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_summand. ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_summand + S (ff_a_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum) = S ((S (ff_i_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) * ff_scale_dot_mcp_ics_linear_exists_raw_nn_cell_dot)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_summand. ff_code_dot_mcp_ics_linear_exists_raw_nn_cell_dot = ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_summand * S ((S (ff_i_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) * ff_scale_dot_mcp_ics_linear_exists_raw_nn_cell_dot) + (ff_a_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_partial. ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_partial + S (ff_r_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum) = S ((S (ff_i_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_partial. ff_u_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_partial * S ((S (ff_i_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum) + (ff_r_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_successor. ff_h_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_successor + S (ff_s_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum) = S ((S (S ff_i_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_successor. ff_u_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum_successor * S ((S (S ff_i_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum) + (ff_s_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum))) /\ ff_s_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum = ff_r_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum + ff_a_dot_mcp_ics_linear_exists_raw_nn_cell_dot_sum))))))))))) /\ (((exists fs_h_mcp_ics_linear_exists_raw_nn_entry. fs_h_mcp_ics_linear_exists_raw_nn_entry + S (ff_value_mcp_prefix_ics_linear_exists_raw_nn) = S ((S (ff_index_mcp_prefix_ics_linear_exists_raw_nn)) * ff_nns_mcp_smatrix_ics_linear_exists_raw)) /\ exists fs_q_mcp_ics_linear_exists_raw_nn_entry. ff_nn_mcp_smatrix_ics_linear_exists_raw = fs_q_mcp_ics_linear_exists_raw_nn_entry * S ((S (ff_index_mcp_prefix_ics_linear_exists_raw_nn)) * ff_nns_mcp_smatrix_ics_linear_exists_raw) + (ff_value_mcp_prefix_ics_linear_exists_raw_nn))))))) /\ ((forall ff_index_mcp_prefix_ics_linear_exists_raw_pn. (exists mcp_gap_ics_linear_exists_raw_pn_index. mcp_gap_ics_linear_exists_raw_pn_index + S (ff_index_mcp_prefix_ics_linear_exists_raw_pn) = ((r) * (1))) -> exists ff_row_mcp_prefix_ics_linear_exists_raw_pn ff_column_mcp_prefix_ics_linear_exists_raw_pn ff_value_mcp_prefix_ics_linear_exists_raw_pn. ((ff_index_mcp_prefix_ics_linear_exists_raw_pn) = (1) * ff_row_mcp_prefix_ics_linear_exists_raw_pn + ff_column_mcp_prefix_ics_linear_exists_raw_pn /\ ((exists mcp_gap_ics_linear_exists_raw_pn_column. mcp_gap_ics_linear_exists_raw_pn_column + S (ff_column_mcp_prefix_ics_linear_exists_raw_pn) = (1)) /\ ((exists ff_left_mcp_cell_ics_linear_exists_raw_pn_cell ff_left_scale_mcp_cell_ics_linear_exists_raw_pn_cell ff_right_mcp_cell_ics_linear_exists_raw_pn_cell ff_right_scale_mcp_cell_ics_linear_exists_raw_pn_cell. ((forall ff_index_mcp_ics_linear_exists_raw_pn_cell_row ff_source_mcp_ics_linear_exists_raw_pn_cell_row ff_target_mcp_ics_linear_exists_raw_pn_cell_row. (exists mcp_gap_ics_linear_exists_raw_pn_cell_row_bound. mcp_gap_ics_linear_exists_raw_pn_cell_row_bound + S (ff_index_mcp_ics_linear_exists_raw_pn_cell_row) = (w)) -> (((exists fs_h_mcp_ics_linear_exists_raw_pn_cell_row_source. fs_h_mcp_ics_linear_exists_raw_pn_cell_row_source + S (ff_source_mcp_ics_linear_exists_raw_pn_cell_row) = S ((S (((ff_row_mcp_prefix_ics_linear_exists_raw_pn) * (w)) + (1) * ff_index_mcp_ics_linear_exists_raw_pn_cell_row)) * ac)) /\ exists fs_q_mcp_ics_linear_exists_raw_pn_cell_row_source. ab = fs_q_mcp_ics_linear_exists_raw_pn_cell_row_source * S ((S (((ff_row_mcp_prefix_ics_linear_exists_raw_pn) * (w)) + (1) * ff_index_mcp_ics_linear_exists_raw_pn_cell_row)) * ac) + (ff_source_mcp_ics_linear_exists_raw_pn_cell_row))) -> (((exists fs_h_mcp_ics_linear_exists_raw_pn_cell_row_target. fs_h_mcp_ics_linear_exists_raw_pn_cell_row_target + S (ff_target_mcp_ics_linear_exists_raw_pn_cell_row) = S ((S (ff_index_mcp_ics_linear_exists_raw_pn_cell_row)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_pn_cell)) /\ exists fs_q_mcp_ics_linear_exists_raw_pn_cell_row_target. ff_left_mcp_cell_ics_linear_exists_raw_pn_cell = fs_q_mcp_ics_linear_exists_raw_pn_cell_row_target * S ((S (ff_index_mcp_ics_linear_exists_raw_pn_cell_row)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_pn_cell) + (ff_target_mcp_ics_linear_exists_raw_pn_cell_row))) -> ff_target_mcp_ics_linear_exists_raw_pn_cell_row = ff_source_mcp_ics_linear_exists_raw_pn_cell_row) /\ ((forall ff_index_mcp_ics_linear_exists_raw_pn_cell_column ff_source_mcp_ics_linear_exists_raw_pn_cell_column ff_target_mcp_ics_linear_exists_raw_pn_cell_column. (exists mcp_gap_ics_linear_exists_raw_pn_cell_column_bound. mcp_gap_ics_linear_exists_raw_pn_cell_column_bound + S (ff_index_mcp_ics_linear_exists_raw_pn_cell_column) = (w)) -> (((exists fs_h_mcp_ics_linear_exists_raw_pn_cell_column_source. fs_h_mcp_ics_linear_exists_raw_pn_cell_column_source + S (ff_source_mcp_ics_linear_exists_raw_pn_cell_column) = S ((S ((ff_column_mcp_prefix_ics_linear_exists_raw_pn) + (1) * ff_index_mcp_ics_linear_exists_raw_pn_cell_column)) * fc)) /\ exists fs_q_mcp_ics_linear_exists_raw_pn_cell_column_source. fb = fs_q_mcp_ics_linear_exists_raw_pn_cell_column_source * S ((S ((ff_column_mcp_prefix_ics_linear_exists_raw_pn) + (1) * ff_index_mcp_ics_linear_exists_raw_pn_cell_column)) * fc) + (ff_source_mcp_ics_linear_exists_raw_pn_cell_column))) -> (((exists fs_h_mcp_ics_linear_exists_raw_pn_cell_column_target. fs_h_mcp_ics_linear_exists_raw_pn_cell_column_target + S (ff_target_mcp_ics_linear_exists_raw_pn_cell_column) = S ((S (ff_index_mcp_ics_linear_exists_raw_pn_cell_column)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_pn_cell)) /\ exists fs_q_mcp_ics_linear_exists_raw_pn_cell_column_target. ff_right_mcp_cell_ics_linear_exists_raw_pn_cell = fs_q_mcp_ics_linear_exists_raw_pn_cell_column_target * S ((S (ff_index_mcp_ics_linear_exists_raw_pn_cell_column)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_pn_cell) + (ff_target_mcp_ics_linear_exists_raw_pn_cell_column))) -> ff_target_mcp_ics_linear_exists_raw_pn_cell_column = ff_source_mcp_ics_linear_exists_raw_pn_cell_column) /\ (exists ff_code_dot_mcp_ics_linear_exists_raw_pn_cell_dot ff_scale_dot_mcp_ics_linear_exists_raw_pn_cell_dot. ((forall fpmp_index_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise fpmp_left_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise fpmp_right_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise fpmp_target_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise. (exists fpmp_gap_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise. fpmp_gap_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise + S fpmp_index_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise = w) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_left. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_left + S (fpmp_left_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_pn_cell)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_left. ff_left_mcp_cell_ics_linear_exists_raw_pn_cell = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_left * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_pn_cell) + (fpmp_left_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_right. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_right + S (fpmp_right_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_pn_cell)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_right. ff_right_mcp_cell_ics_linear_exists_raw_pn_cell = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_right * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_pn_cell) + (fpmp_right_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_target. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_target + S (fpmp_target_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise)) * ff_scale_dot_mcp_ics_linear_exists_raw_pn_cell_dot)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_target. ff_code_dot_mcp_ics_linear_exists_raw_pn_cell_dot = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise_target * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise)) * ff_scale_dot_mcp_ics_linear_exists_raw_pn_cell_dot) + (fpmp_target_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise))) -> fpmp_target_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise = fpmp_left_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise * fpmp_right_dot_mcp_ics_linear_exists_raw_pn_cell_dot_pointwise) /\ (exists ff_u_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum. ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_start. ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_start + S (0) = S ((S (0)) * ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_start. ff_u_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_start * S ((S (0)) * ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum) + (0))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_terminal. ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_terminal + S (ff_value_mcp_prefix_ics_linear_exists_raw_pn) = S ((S (w)) * ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_terminal. ff_u_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_terminal * S ((S (w)) * ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum) + (ff_value_mcp_prefix_ics_linear_exists_raw_pn))) /\ forall ff_i_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum. (exists ff_lt_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_bound. ff_lt_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_bound + S ff_i_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum = w) -> exists ff_a_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum ff_r_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum ff_s_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum. ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_summand. ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_summand + S (ff_a_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum) = S ((S (ff_i_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) * ff_scale_dot_mcp_ics_linear_exists_raw_pn_cell_dot)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_summand. ff_code_dot_mcp_ics_linear_exists_raw_pn_cell_dot = ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_summand * S ((S (ff_i_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) * ff_scale_dot_mcp_ics_linear_exists_raw_pn_cell_dot) + (ff_a_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_partial. ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_partial + S (ff_r_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum) = S ((S (ff_i_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_partial. ff_u_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_partial * S ((S (ff_i_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum) + (ff_r_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_successor. ff_h_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_successor + S (ff_s_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum) = S ((S (S ff_i_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_successor. ff_u_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum_successor * S ((S (S ff_i_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum) + (ff_s_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum))) /\ ff_s_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum = ff_r_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum + ff_a_dot_mcp_ics_linear_exists_raw_pn_cell_dot_sum))))))))))) /\ (((exists fs_h_mcp_ics_linear_exists_raw_pn_entry. fs_h_mcp_ics_linear_exists_raw_pn_entry + S (ff_value_mcp_prefix_ics_linear_exists_raw_pn) = S ((S (ff_index_mcp_prefix_ics_linear_exists_raw_pn)) * ff_pns_mcp_smatrix_ics_linear_exists_raw)) /\ exists fs_q_mcp_ics_linear_exists_raw_pn_entry. ff_pn_mcp_smatrix_ics_linear_exists_raw = fs_q_mcp_ics_linear_exists_raw_pn_entry * S ((S (ff_index_mcp_prefix_ics_linear_exists_raw_pn)) * ff_pns_mcp_smatrix_ics_linear_exists_raw) + (ff_value_mcp_prefix_ics_linear_exists_raw_pn))))))) /\ ((forall ff_index_mcp_prefix_ics_linear_exists_raw_np. (exists mcp_gap_ics_linear_exists_raw_np_index. mcp_gap_ics_linear_exists_raw_np_index + S (ff_index_mcp_prefix_ics_linear_exists_raw_np) = ((r) * (1))) -> exists ff_row_mcp_prefix_ics_linear_exists_raw_np ff_column_mcp_prefix_ics_linear_exists_raw_np ff_value_mcp_prefix_ics_linear_exists_raw_np. ((ff_index_mcp_prefix_ics_linear_exists_raw_np) = (1) * ff_row_mcp_prefix_ics_linear_exists_raw_np + ff_column_mcp_prefix_ics_linear_exists_raw_np /\ ((exists mcp_gap_ics_linear_exists_raw_np_column. mcp_gap_ics_linear_exists_raw_np_column + S (ff_column_mcp_prefix_ics_linear_exists_raw_np) = (1)) /\ ((exists ff_left_mcp_cell_ics_linear_exists_raw_np_cell ff_left_scale_mcp_cell_ics_linear_exists_raw_np_cell ff_right_mcp_cell_ics_linear_exists_raw_np_cell ff_right_scale_mcp_cell_ics_linear_exists_raw_np_cell. ((forall ff_index_mcp_ics_linear_exists_raw_np_cell_row ff_source_mcp_ics_linear_exists_raw_np_cell_row ff_target_mcp_ics_linear_exists_raw_np_cell_row. (exists mcp_gap_ics_linear_exists_raw_np_cell_row_bound. mcp_gap_ics_linear_exists_raw_np_cell_row_bound + S (ff_index_mcp_ics_linear_exists_raw_np_cell_row) = (w)) -> (((exists fs_h_mcp_ics_linear_exists_raw_np_cell_row_source. fs_h_mcp_ics_linear_exists_raw_np_cell_row_source + S (ff_source_mcp_ics_linear_exists_raw_np_cell_row) = S ((S (((ff_row_mcp_prefix_ics_linear_exists_raw_np) * (w)) + (1) * ff_index_mcp_ics_linear_exists_raw_np_cell_row)) * dc)) /\ exists fs_q_mcp_ics_linear_exists_raw_np_cell_row_source. db = fs_q_mcp_ics_linear_exists_raw_np_cell_row_source * S ((S (((ff_row_mcp_prefix_ics_linear_exists_raw_np) * (w)) + (1) * ff_index_mcp_ics_linear_exists_raw_np_cell_row)) * dc) + (ff_source_mcp_ics_linear_exists_raw_np_cell_row))) -> (((exists fs_h_mcp_ics_linear_exists_raw_np_cell_row_target. fs_h_mcp_ics_linear_exists_raw_np_cell_row_target + S (ff_target_mcp_ics_linear_exists_raw_np_cell_row) = S ((S (ff_index_mcp_ics_linear_exists_raw_np_cell_row)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_np_cell)) /\ exists fs_q_mcp_ics_linear_exists_raw_np_cell_row_target. ff_left_mcp_cell_ics_linear_exists_raw_np_cell = fs_q_mcp_ics_linear_exists_raw_np_cell_row_target * S ((S (ff_index_mcp_ics_linear_exists_raw_np_cell_row)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_np_cell) + (ff_target_mcp_ics_linear_exists_raw_np_cell_row))) -> ff_target_mcp_ics_linear_exists_raw_np_cell_row = ff_source_mcp_ics_linear_exists_raw_np_cell_row) /\ ((forall ff_index_mcp_ics_linear_exists_raw_np_cell_column ff_source_mcp_ics_linear_exists_raw_np_cell_column ff_target_mcp_ics_linear_exists_raw_np_cell_column. (exists mcp_gap_ics_linear_exists_raw_np_cell_column_bound. mcp_gap_ics_linear_exists_raw_np_cell_column_bound + S (ff_index_mcp_ics_linear_exists_raw_np_cell_column) = (w)) -> (((exists fs_h_mcp_ics_linear_exists_raw_np_cell_column_source. fs_h_mcp_ics_linear_exists_raw_np_cell_column_source + S (ff_source_mcp_ics_linear_exists_raw_np_cell_column) = S ((S ((ff_column_mcp_prefix_ics_linear_exists_raw_np) + (1) * ff_index_mcp_ics_linear_exists_raw_np_cell_column)) * ec)) /\ exists fs_q_mcp_ics_linear_exists_raw_np_cell_column_source. eb = fs_q_mcp_ics_linear_exists_raw_np_cell_column_source * S ((S ((ff_column_mcp_prefix_ics_linear_exists_raw_np) + (1) * ff_index_mcp_ics_linear_exists_raw_np_cell_column)) * ec) + (ff_source_mcp_ics_linear_exists_raw_np_cell_column))) -> (((exists fs_h_mcp_ics_linear_exists_raw_np_cell_column_target. fs_h_mcp_ics_linear_exists_raw_np_cell_column_target + S (ff_target_mcp_ics_linear_exists_raw_np_cell_column) = S ((S (ff_index_mcp_ics_linear_exists_raw_np_cell_column)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_np_cell)) /\ exists fs_q_mcp_ics_linear_exists_raw_np_cell_column_target. ff_right_mcp_cell_ics_linear_exists_raw_np_cell = fs_q_mcp_ics_linear_exists_raw_np_cell_column_target * S ((S (ff_index_mcp_ics_linear_exists_raw_np_cell_column)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_np_cell) + (ff_target_mcp_ics_linear_exists_raw_np_cell_column))) -> ff_target_mcp_ics_linear_exists_raw_np_cell_column = ff_source_mcp_ics_linear_exists_raw_np_cell_column) /\ (exists ff_code_dot_mcp_ics_linear_exists_raw_np_cell_dot ff_scale_dot_mcp_ics_linear_exists_raw_np_cell_dot. ((forall fpmp_index_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise fpmp_left_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise fpmp_right_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise fpmp_target_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise. (exists fpmp_gap_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise. fpmp_gap_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise + S fpmp_index_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise = w) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_left. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_left + S (fpmp_left_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_np_cell)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_left. ff_left_mcp_cell_ics_linear_exists_raw_np_cell = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_left * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise)) * ff_left_scale_mcp_cell_ics_linear_exists_raw_np_cell) + (fpmp_left_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_right. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_right + S (fpmp_right_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_np_cell)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_right. ff_right_mcp_cell_ics_linear_exists_raw_np_cell = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_right * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise)) * ff_right_scale_mcp_cell_ics_linear_exists_raw_np_cell) + (fpmp_right_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_target. ff_h_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_target + S (fpmp_target_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise)) * ff_scale_dot_mcp_ics_linear_exists_raw_np_cell_dot)) /\ exists ff_q_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_target. ff_code_dot_mcp_ics_linear_exists_raw_np_cell_dot = ff_q_fpmp_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise_target * S ((S (fpmp_index_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise)) * ff_scale_dot_mcp_ics_linear_exists_raw_np_cell_dot) + (fpmp_target_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise))) -> fpmp_target_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise = fpmp_left_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise * fpmp_right_dot_mcp_ics_linear_exists_raw_np_cell_dot_pointwise) /\ (exists ff_u_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum. ((((exists ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_start. ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_start + S (0) = S ((S (0)) * ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_start. ff_u_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_start * S ((S (0)) * ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum) + (0))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_terminal. ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_terminal + S (ff_value_mcp_prefix_ics_linear_exists_raw_np) = S ((S (w)) * ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_terminal. ff_u_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_terminal * S ((S (w)) * ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum) + (ff_value_mcp_prefix_ics_linear_exists_raw_np))) /\ forall ff_i_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum. (exists ff_lt_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_bound. ff_lt_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_bound + S ff_i_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum = w) -> exists ff_a_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum ff_r_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum ff_s_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum. ((((exists ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_summand. ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_summand + S (ff_a_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum) = S ((S (ff_i_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) * ff_scale_dot_mcp_ics_linear_exists_raw_np_cell_dot)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_summand. ff_code_dot_mcp_ics_linear_exists_raw_np_cell_dot = ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_summand * S ((S (ff_i_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) * ff_scale_dot_mcp_ics_linear_exists_raw_np_cell_dot) + (ff_a_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_partial. ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_partial + S (ff_r_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum) = S ((S (ff_i_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_partial. ff_u_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_partial * S ((S (ff_i_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum) + (ff_r_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_successor. ff_h_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_successor + S (ff_s_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum) = S ((S (S ff_i_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) /\ exists ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_successor. ff_u_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum = ff_q_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum_successor * S ((S (S ff_i_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum)) * ff_v_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum) + (ff_s_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum))) /\ ff_s_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum = ff_r_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum + ff_a_dot_mcp_ics_linear_exists_raw_np_cell_dot_sum))))))))))) /\ (((exists fs_h_mcp_ics_linear_exists_raw_np_entry. fs_h_mcp_ics_linear_exists_raw_np_entry + S (ff_value_mcp_prefix_ics_linear_exists_raw_np) = S ((S (ff_index_mcp_prefix_ics_linear_exists_raw_np)) * ff_nps_mcp_smatrix_ics_linear_exists_raw)) /\ exists fs_q_mcp_ics_linear_exists_raw_np_entry. ff_np_mcp_smatrix_ics_linear_exists_raw = fs_q_mcp_ics_linear_exists_raw_np_entry * S ((S (ff_index_mcp_prefix_ics_linear_exists_raw_np)) * ff_nps_mcp_smatrix_ics_linear_exists_raw) + (ff_value_mcp_prefix_ics_linear_exists_raw_np))))))) /\ ((forall ff_index_mcp_add_ics_linear_exists_raw_positive ff_left_mcp_add_ics_linear_exists_raw_positive ff_right_mcp_add_ics_linear_exists_raw_positive ff_target_mcp_add_ics_linear_exists_raw_positive. (exists mcp_gap_ics_linear_exists_raw_positive_bound. mcp_gap_ics_linear_exists_raw_positive_bound + S (ff_index_mcp_add_ics_linear_exists_raw_positive) = ((r) * (1))) -> (((exists fs_h_mcp_ics_linear_exists_raw_positive_left. fs_h_mcp_ics_linear_exists_raw_positive_left + S (ff_left_mcp_add_ics_linear_exists_raw_positive) = S ((S (ff_index_mcp_add_ics_linear_exists_raw_positive)) * ff_pps_mcp_smatrix_ics_linear_exists_raw)) /\ exists fs_q_mcp_ics_linear_exists_raw_positive_left. ff_pp_mcp_smatrix_ics_linear_exists_raw = fs_q_mcp_ics_linear_exists_raw_positive_left * S ((S (ff_index_mcp_add_ics_linear_exists_raw_positive)) * ff_pps_mcp_smatrix_ics_linear_exists_raw) + (ff_left_mcp_add_ics_linear_exists_raw_positive))) -> (((exists fs_h_mcp_ics_linear_exists_raw_positive_right. fs_h_mcp_ics_linear_exists_raw_positive_right + S (ff_right_mcp_add_ics_linear_exists_raw_positive) = S ((S (ff_index_mcp_add_ics_linear_exists_raw_positive)) * ff_nns_mcp_smatrix_ics_linear_exists_raw)) /\ exists fs_q_mcp_ics_linear_exists_raw_positive_right. ff_nn_mcp_smatrix_ics_linear_exists_raw = fs_q_mcp_ics_linear_exists_raw_positive_right * S ((S (ff_index_mcp_add_ics_linear_exists_raw_positive)) * ff_nns_mcp_smatrix_ics_linear_exists_raw) + (ff_right_mcp_add_ics_linear_exists_raw_positive))) -> (((exists fs_h_mcp_ics_linear_exists_raw_positive_target. fs_h_mcp_ics_linear_exists_raw_positive_target + S (ff_target_mcp_add_ics_linear_exists_raw_positive) = S ((S (ff_index_mcp_add_ics_linear_exists_raw_positive)) * ics_raw_positive_scale_linear_exists)) /\ exists fs_q_mcp_ics_linear_exists_raw_positive_target. ics_raw_positive_linear_exists = fs_q_mcp_ics_linear_exists_raw_positive_target * S ((S (ff_index_mcp_add_ics_linear_exists_raw_positive)) * ics_raw_positive_scale_linear_exists) + (ff_target_mcp_add_ics_linear_exists_raw_positive))) -> ff_target_mcp_add_ics_linear_exists_raw_positive = ff_left_mcp_add_ics_linear_exists_raw_positive + ff_right_mcp_add_ics_linear_exists_raw_positive) /\ (forall ff_index_mcp_add_ics_linear_exists_raw_negative ff_left_mcp_add_ics_linear_exists_raw_negative ff_right_mcp_add_ics_linear_exists_raw_negative ff_target_mcp_add_ics_linear_exists_raw_negative. (exists mcp_gap_ics_linear_exists_raw_negative_bound. mcp_gap_ics_linear_exists_raw_negative_bound + S (ff_index_mcp_add_ics_linear_exists_raw_negative) = ((r) * (1))) -> (((exists fs_h_mcp_ics_linear_exists_raw_negative_left. fs_h_mcp_ics_linear_exists_raw_negative_left + S (ff_left_mcp_add_ics_linear_exists_raw_negative) = S ((S (ff_index_mcp_add_ics_linear_exists_raw_negative)) * ff_pns_mcp_smatrix_ics_linear_exists_raw)) /\ exists fs_q_mcp_ics_linear_exists_raw_negative_left. ff_pn_mcp_smatrix_ics_linear_exists_raw = fs_q_mcp_ics_linear_exists_raw_negative_left * S ((S (ff_index_mcp_add_ics_linear_exists_raw_negative)) * ff_pns_mcp_smatrix_ics_linear_exists_raw) + (ff_left_mcp_add_ics_linear_exists_raw_negative))) -> (((exists fs_h_mcp_ics_linear_exists_raw_negative_right. fs_h_mcp_ics_linear_exists_raw_negative_right + S (ff_right_mcp_add_ics_linear_exists_raw_negative) = S ((S (ff_index_mcp_add_ics_linear_exists_raw_negative)) * ff_nps_mcp_smatrix_ics_linear_exists_raw)) /\ exists fs_q_mcp_ics_linear_exists_raw_negative_right. ff_np_mcp_smatrix_ics_linear_exists_raw = fs_q_mcp_ics_linear_exists_raw_negative_right * S ((S (ff_index_mcp_add_ics_linear_exists_raw_negative)) * ff_nps_mcp_smatrix_ics_linear_exists_raw) + (ff_right_mcp_add_ics_linear_exists_raw_negative))) -> (((exists fs_h_mcp_ics_linear_exists_raw_negative_target. fs_h_mcp_ics_linear_exists_raw_negative_target + S (ff_target_mcp_add_ics_linear_exists_raw_negative) = S ((S (ff_index_mcp_add_ics_linear_exists_raw_negative)) * ics_raw_negative_scale_linear_exists)) /\ exists fs_q_mcp_ics_linear_exists_raw_negative_target. ics_raw_negative_linear_exists = fs_q_mcp_ics_linear_exists_raw_negative_target * S ((S (ff_index_mcp_add_ics_linear_exists_raw_negative)) * ics_raw_negative_scale_linear_exists) + (ff_target_mcp_add_ics_linear_exists_raw_negative))) -> ff_target_mcp_add_ics_linear_exists_raw_negative = ff_left_mcp_add_ics_linear_exists_raw_negative + ff_right_mcp_add_ics_linear_exists_raw_negative))))))) /\ (forall ics_index_linear_exists_equal ics_value0_linear_exists_equal ics_value1_linear_exists_equal ics_value2_linear_exists_equal ics_value3_linear_exists_equal. (exists ics_gap_linear_exists_equal_bound. ics_gap_linear_exists_equal_bound + S (ics_index_linear_exists_equal) = (r)) -> (((exists fs_h_ics_linear_exists_equal_at0. fs_h_ics_linear_exists_equal_at0 + S (ics_value0_linear_exists_equal) = S ((S (ics_index_linear_exists_equal)) * ics_raw_positive_scale_linear_exists)) /\ exists fs_q_ics_linear_exists_equal_at0. ics_raw_positive_linear_exists = fs_q_ics_linear_exists_equal_at0 * S ((S (ics_index_linear_exists_equal)) * ics_raw_positive_scale_linear_exists) + (ics_value0_linear_exists_equal))) -> (((exists fs_h_ics_linear_exists_equal_at1. fs_h_ics_linear_exists_equal_at1 + S (ics_value1_linear_exists_equal) = S ((S (ics_index_linear_exists_equal)) * ics_raw_negative_scale_linear_exists)) /\ exists fs_q_ics_linear_exists_equal_at1. ics_raw_negative_linear_exists = fs_q_ics_linear_exists_equal_at1 * S ((S (ics_index_linear_exists_equal)) * ics_raw_negative_scale_linear_exists) + (ics_value1_linear_exists_equal))) -> (((exists fs_h_ics_linear_exists_equal_at2. fs_h_ics_linear_exists_equal_at2 + S (ics_value2_linear_exists_equal) = S ((S (ics_index_linear_exists_equal)) * pc)) /\ exists fs_q_ics_linear_exists_equal_at2. pb = fs_q_ics_linear_exists_equal_at2 * S ((S (ics_index_linear_exists_equal)) * pc) + (ics_value2_linear_exists_equal))) -> (((exists fs_h_ics_linear_exists_equal_at3. fs_h_ics_linear_exists_equal_at3 + S (ics_value3_linear_exists_equal) = S ((S (ics_index_linear_exists_equal)) * nc)) /\ exists fs_q_ics_linear_exists_equal_at3. nb = fs_q_ics_linear_exists_equal_at3 * S ((S (ics_index_linear_exists_equal)) * nc) + (ics_value3_linear_exists_equal))) -> ics_value0_linear_exists_equal + ics_value3_linear_exists_equal = ics_value2_linear_exists_equal + ics_value1_linear_exists_equal))))

Complete tactic proof in conservative notation

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

Read the argument

Proof checkpoints

43 script commands · 7 reading checkpoints · 1 local claims

This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.

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

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

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

  1. L1
    intro ab
  2. L2
    intro ac
  3. L3
    intro db
  4. L4
    intro dc
  5. L5
    intro eb
  6. L6
    intro ec
  7. L7
    intro fb
  8. L8
    intro fc
  9. L9
    intro w
  10. L10
    intro r
02Establish hrawL11–20

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

  1. L11
    have hraw : ∃ pb. ∃ pc. ∃ nb. ∃ nc. SignedMatrixProduct(ab,ac,db,dc,eb,ec,fb,fc,w,1,r,pb,pc,nb,nc)Definitions: SignedMatrixProduct(ab,ac,db,dc,eb,ec,fb,fc,w,1,r,pb,pc,nb,nc)Original native command in the exact edition
  2. L12
    specialize beta_signed_matrix_product_exists (ab)
  3. L13
    specialize beta_signed_matrix_product_exists (ac)
  4. L14
    specialize beta_signed_matrix_product_exists (db)
  5. L15
    specialize beta_signed_matrix_product_exists (dc)
  6. L16
    specialize beta_signed_matrix_product_exists (eb)
  7. L17
    specialize beta_signed_matrix_product_exists (ec)
  8. L18
    specialize beta_signed_matrix_product_exists (fb)
  9. L19
    specialize beta_signed_matrix_product_exists (fc)
  10. L20
    specialize beta_signed_matrix_product_exists (w)
03Use earlier factsL21–23

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

  1. L21
    specialize beta_signed_matrix_product_exists (1)
  2. L22
    specialize beta_signed_matrix_product_exists (r)
  3. L23
    apply beta_signed_matrix_product_exists
04Separate the logical casesL24–27

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

  1. L24
    cases hraw
  2. L25
    cases hraw_witness
  3. L26
    cases hraw_witness_witness
  4. L27
    cases hraw_witness_witness_witness
05Construct an explicit witnessL28–35

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

  1. L28
    exists x
  2. L29
    exists x1
  3. L30
    exists x2
  4. L31
    exists x3
  5. L32
    exists x
  6. L33
    exists x1
  7. L34
    exists x2
  8. L35
    exists x3
06Separate the logical casesL36–36

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

  1. L36
    split
07Use earlier factsL37–43

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

  1. L37
    exact hraw_witness_witness_witness_witness
  2. L38
    specialize integer_vector_equal_reflexive (x)
  3. L39
    specialize integer_vector_equal_reflexive (x1)
  4. L40
    specialize integer_vector_equal_reflexive (x2)
  5. L41
    specialize integer_vector_equal_reflexive (x3)
  6. L42
    specialize integer_vector_equal_reflexive (r)
  7. L43
    apply integer_vector_equal_reflexive

Library-wide reading audit

Original defined command ledger · 43 lines
  1. 0001intro ab
  2. 0002intro ac
  3. 0003intro db
  4. 0004intro dc
  5. 0005intro eb
  6. 0006intro ec
  7. 0007intro fb
  8. 0008intro fc
  9. 0009intro w
  10. 0010intro r
  11. 0011have hraw : ∃ pb. ∃ pc. ∃ nb. ∃ nc. SignedMatrixProduct(ab,ac,db,dc,eb,ec,fb,fc,w,1,r,pb,pc,nb,nc)
  12. 0012specialize beta_signed_matrix_product_exists (ab)
  13. 0013specialize beta_signed_matrix_product_exists (ac)
  14. 0014specialize beta_signed_matrix_product_exists (db)
  15. 0015specialize beta_signed_matrix_product_exists (dc)
  16. 0016specialize beta_signed_matrix_product_exists (eb)
  17. 0017specialize beta_signed_matrix_product_exists (ec)
  18. 0018specialize beta_signed_matrix_product_exists (fb)
  19. 0019specialize beta_signed_matrix_product_exists (fc)
  20. 0020specialize beta_signed_matrix_product_exists (w)
  21. 0021specialize beta_signed_matrix_product_exists (1)
  22. 0022specialize beta_signed_matrix_product_exists (r)
  23. 0023apply beta_signed_matrix_product_exists
  24. 0024cases hraw
  25. 0025cases hraw_witness
  26. 0026cases hraw_witness_witness
  27. 0027cases hraw_witness_witness_witness
  28. 0028exists x
  29. 0029exists x1
  30. 0030exists x2
  31. 0031exists x3
  32. 0032exists x
  33. 0033exists x1
  34. 0034exists x2
  35. 0035exists x3
  36. 0036split
  37. 0037exact hraw_witness_witness_witness_witness
  38. 0038specialize integer_vector_equal_reflexive (x)
  39. 0039specialize integer_vector_equal_reflexive (x1)
  40. 0040specialize integer_vector_equal_reflexive (x2)
  41. 0041specialize integer_vector_equal_reflexive (x3)
  42. 0042specialize integer_vector_equal_reflexive (r)
  43. 0043apply integer_vector_equal_reflexive