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.
Exact expanded first-order arithmetic statement
forall ab ac bb bc cb cc db dc w row L M N. (forall ff_index_mcp_add_ics_cell_coeff_add ff_left_mcp_add_ics_cell_coeff_add ff_right_mcp_add_ics_cell_coeff_add ff_target_mcp_add_ics_cell_coeff_add. (exists mcp_gap_ics_cell_coeff_add_bound. mcp_gap_ics_cell_coeff_add_bound + S (ff_index_mcp_add_ics_cell_coeff_add) = (w)) -> (((exists fs_h_mcp_ics_cell_coeff_add_left. fs_h_mcp_ics_cell_coeff_add_left + S (ff_left_mcp_add_ics_cell_coeff_add) = S ((S (ff_index_mcp_add_ics_cell_coeff_add)) * bc)) /\ exists fs_q_mcp_ics_cell_coeff_add_left. bb = fs_q_mcp_ics_cell_coeff_add_left * S ((S (ff_index_mcp_add_ics_cell_coeff_add)) * bc) + (ff_left_mcp_add_ics_cell_coeff_add))) -> (((exists fs_h_mcp_ics_cell_coeff_add_right. fs_h_mcp_ics_cell_coeff_add_right + S (ff_right_mcp_add_ics_cell_coeff_add) = S ((S (ff_index_mcp_add_ics_cell_coeff_add)) * cc)) /\ exists fs_q_mcp_ics_cell_coeff_add_right. cb = fs_q_mcp_ics_cell_coeff_add_right * S ((S (ff_index_mcp_add_ics_cell_coeff_add)) * cc) + (ff_right_mcp_add_ics_cell_coeff_add))) -> (((exists fs_h_mcp_ics_cell_coeff_add_target. fs_h_mcp_ics_cell_coeff_add_target + S (ff_target_mcp_add_ics_cell_coeff_add) = S ((S (ff_index_mcp_add_ics_cell_coeff_add)) * dc)) /\ exists fs_q_mcp_ics_cell_coeff_add_target. db = fs_q_mcp_ics_cell_coeff_add_target * S ((S (ff_index_mcp_add_ics_cell_coeff_add)) * dc) + (ff_target_mcp_add_ics_cell_coeff_add))) -> ff_target_mcp_add_ics_cell_coeff_add = ff_left_mcp_add_ics_cell_coeff_add + ff_right_mcp_add_ics_cell_coeff_add) -> (exists ff_left_mcp_cell_ics_cell_first ff_left_scale_mcp_cell_ics_cell_first ff_right_mcp_cell_ics_cell_first ff_right_scale_mcp_cell_ics_cell_first. ((forall ff_index_mcp_ics_cell_first_row ff_source_mcp_ics_cell_first_row ff_target_mcp_ics_cell_first_row. (exists mcp_gap_ics_cell_first_row_bound. mcp_gap_ics_cell_first_row_bound + S (ff_index_mcp_ics_cell_first_row) = (w)) -> (((exists fs_h_mcp_ics_cell_first_row_source. fs_h_mcp_ics_cell_first_row_source + S (ff_source_mcp_ics_cell_first_row) = S ((S (((row) * (w)) + (1) * ff_index_mcp_ics_cell_first_row)) * ac)) /\ exists fs_q_mcp_ics_cell_first_row_source. ab = fs_q_mcp_ics_cell_first_row_source * S ((S (((row) * (w)) + (1) * ff_index_mcp_ics_cell_first_row)) * ac) + (ff_source_mcp_ics_cell_first_row))) -> (((exists fs_h_mcp_ics_cell_first_row_target. fs_h_mcp_ics_cell_first_row_target + S (ff_target_mcp_ics_cell_first_row) = S ((S (ff_index_mcp_ics_cell_first_row)) * ff_left_scale_mcp_cell_ics_cell_first)) /\ exists fs_q_mcp_ics_cell_first_row_target. ff_left_mcp_cell_ics_cell_first = fs_q_mcp_ics_cell_first_row_target * S ((S (ff_index_mcp_ics_cell_first_row)) * ff_left_scale_mcp_cell_ics_cell_first) + (ff_target_mcp_ics_cell_first_row))) -> ff_target_mcp_ics_cell_first_row = ff_source_mcp_ics_cell_first_row) /\ ((forall ff_index_mcp_ics_cell_first_column ff_source_mcp_ics_cell_first_column ff_target_mcp_ics_cell_first_column. (exists mcp_gap_ics_cell_first_column_bound. mcp_gap_ics_cell_first_column_bound + S (ff_index_mcp_ics_cell_first_column) = (w)) -> (((exists fs_h_mcp_ics_cell_first_column_source. fs_h_mcp_ics_cell_first_column_source + S (ff_source_mcp_ics_cell_first_column) = S ((S ((0) + (1) * ff_index_mcp_ics_cell_first_column)) * bc)) /\ exists fs_q_mcp_ics_cell_first_column_source. bb = fs_q_mcp_ics_cell_first_column_source * S ((S ((0) + (1) * ff_index_mcp_ics_cell_first_column)) * bc) + (ff_source_mcp_ics_cell_first_column))) -> (((exists fs_h_mcp_ics_cell_first_column_target. fs_h_mcp_ics_cell_first_column_target + S (ff_target_mcp_ics_cell_first_column) = S ((S (ff_index_mcp_ics_cell_first_column)) * ff_right_scale_mcp_cell_ics_cell_first)) /\ exists fs_q_mcp_ics_cell_first_column_target. ff_right_mcp_cell_ics_cell_first = fs_q_mcp_ics_cell_first_column_target * S ((S (ff_index_mcp_ics_cell_first_column)) * ff_right_scale_mcp_cell_ics_cell_first) + (ff_target_mcp_ics_cell_first_column))) -> ff_target_mcp_ics_cell_first_column = ff_source_mcp_ics_cell_first_column) /\ (exists ff_code_dot_mcp_ics_cell_first_dot ff_scale_dot_mcp_ics_cell_first_dot. ((forall fpmp_index_dot_mcp_ics_cell_first_dot_pointwise fpmp_left_dot_mcp_ics_cell_first_dot_pointwise fpmp_right_dot_mcp_ics_cell_first_dot_pointwise fpmp_target_dot_mcp_ics_cell_first_dot_pointwise. (exists fpmp_gap_dot_mcp_ics_cell_first_dot_pointwise. fpmp_gap_dot_mcp_ics_cell_first_dot_pointwise + S fpmp_index_dot_mcp_ics_cell_first_dot_pointwise = w) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_first_dot_pointwise_left. ff_h_fpmp_dot_mcp_ics_cell_first_dot_pointwise_left + S (fpmp_left_dot_mcp_ics_cell_first_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_first_dot_pointwise)) * ff_left_scale_mcp_cell_ics_cell_first)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_first_dot_pointwise_left. ff_left_mcp_cell_ics_cell_first = ff_q_fpmp_dot_mcp_ics_cell_first_dot_pointwise_left * S ((S (fpmp_index_dot_mcp_ics_cell_first_dot_pointwise)) * ff_left_scale_mcp_cell_ics_cell_first) + (fpmp_left_dot_mcp_ics_cell_first_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_first_dot_pointwise_right. ff_h_fpmp_dot_mcp_ics_cell_first_dot_pointwise_right + S (fpmp_right_dot_mcp_ics_cell_first_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_first_dot_pointwise)) * ff_right_scale_mcp_cell_ics_cell_first)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_first_dot_pointwise_right. ff_right_mcp_cell_ics_cell_first = ff_q_fpmp_dot_mcp_ics_cell_first_dot_pointwise_right * S ((S (fpmp_index_dot_mcp_ics_cell_first_dot_pointwise)) * ff_right_scale_mcp_cell_ics_cell_first) + (fpmp_right_dot_mcp_ics_cell_first_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_first_dot_pointwise_target. ff_h_fpmp_dot_mcp_ics_cell_first_dot_pointwise_target + S (fpmp_target_dot_mcp_ics_cell_first_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_first_dot_pointwise)) * ff_scale_dot_mcp_ics_cell_first_dot)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_first_dot_pointwise_target. ff_code_dot_mcp_ics_cell_first_dot = ff_q_fpmp_dot_mcp_ics_cell_first_dot_pointwise_target * S ((S (fpmp_index_dot_mcp_ics_cell_first_dot_pointwise)) * ff_scale_dot_mcp_ics_cell_first_dot) + (fpmp_target_dot_mcp_ics_cell_first_dot_pointwise))) -> fpmp_target_dot_mcp_ics_cell_first_dot_pointwise = fpmp_left_dot_mcp_ics_cell_first_dot_pointwise * fpmp_right_dot_mcp_ics_cell_first_dot_pointwise) /\ (exists ff_u_dot_mcp_ics_cell_first_dot_sum ff_v_dot_mcp_ics_cell_first_dot_sum. ((((exists ff_h_dot_mcp_ics_cell_first_dot_sum_start. ff_h_dot_mcp_ics_cell_first_dot_sum_start + S (0) = S ((S (0)) * ff_v_dot_mcp_ics_cell_first_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_first_dot_sum_start. ff_u_dot_mcp_ics_cell_first_dot_sum = ff_q_dot_mcp_ics_cell_first_dot_sum_start * S ((S (0)) * ff_v_dot_mcp_ics_cell_first_dot_sum) + (0))) /\ ((((exists ff_h_dot_mcp_ics_cell_first_dot_sum_terminal. ff_h_dot_mcp_ics_cell_first_dot_sum_terminal + S (L) = S ((S (w)) * ff_v_dot_mcp_ics_cell_first_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_first_dot_sum_terminal. ff_u_dot_mcp_ics_cell_first_dot_sum = ff_q_dot_mcp_ics_cell_first_dot_sum_terminal * S ((S (w)) * ff_v_dot_mcp_ics_cell_first_dot_sum) + (L))) /\ forall ff_i_dot_mcp_ics_cell_first_dot_sum. (exists ff_lt_dot_mcp_ics_cell_first_dot_sum_bound. ff_lt_dot_mcp_ics_cell_first_dot_sum_bound + S ff_i_dot_mcp_ics_cell_first_dot_sum = w) -> exists ff_a_dot_mcp_ics_cell_first_dot_sum ff_r_dot_mcp_ics_cell_first_dot_sum ff_s_dot_mcp_ics_cell_first_dot_sum. ((((exists ff_h_dot_mcp_ics_cell_first_dot_sum_summand. ff_h_dot_mcp_ics_cell_first_dot_sum_summand + S (ff_a_dot_mcp_ics_cell_first_dot_sum) = S ((S (ff_i_dot_mcp_ics_cell_first_dot_sum)) * ff_scale_dot_mcp_ics_cell_first_dot)) /\ exists ff_q_dot_mcp_ics_cell_first_dot_sum_summand. ff_code_dot_mcp_ics_cell_first_dot = ff_q_dot_mcp_ics_cell_first_dot_sum_summand * S ((S (ff_i_dot_mcp_ics_cell_first_dot_sum)) * ff_scale_dot_mcp_ics_cell_first_dot) + (ff_a_dot_mcp_ics_cell_first_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_cell_first_dot_sum_partial. ff_h_dot_mcp_ics_cell_first_dot_sum_partial + S (ff_r_dot_mcp_ics_cell_first_dot_sum) = S ((S (ff_i_dot_mcp_ics_cell_first_dot_sum)) * ff_v_dot_mcp_ics_cell_first_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_first_dot_sum_partial. ff_u_dot_mcp_ics_cell_first_dot_sum = ff_q_dot_mcp_ics_cell_first_dot_sum_partial * S ((S (ff_i_dot_mcp_ics_cell_first_dot_sum)) * ff_v_dot_mcp_ics_cell_first_dot_sum) + (ff_r_dot_mcp_ics_cell_first_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_cell_first_dot_sum_successor. ff_h_dot_mcp_ics_cell_first_dot_sum_successor + S (ff_s_dot_mcp_ics_cell_first_dot_sum) = S ((S (S ff_i_dot_mcp_ics_cell_first_dot_sum)) * ff_v_dot_mcp_ics_cell_first_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_first_dot_sum_successor. ff_u_dot_mcp_ics_cell_first_dot_sum = ff_q_dot_mcp_ics_cell_first_dot_sum_successor * S ((S (S ff_i_dot_mcp_ics_cell_first_dot_sum)) * ff_v_dot_mcp_ics_cell_first_dot_sum) + (ff_s_dot_mcp_ics_cell_first_dot_sum))) /\ ff_s_dot_mcp_ics_cell_first_dot_sum = ff_r_dot_mcp_ics_cell_first_dot_sum + ff_a_dot_mcp_ics_cell_first_dot_sum))))))))))) -> (exists ff_left_mcp_cell_ics_cell_second ff_left_scale_mcp_cell_ics_cell_second ff_right_mcp_cell_ics_cell_second ff_right_scale_mcp_cell_ics_cell_second. ((forall ff_index_mcp_ics_cell_second_row ff_source_mcp_ics_cell_second_row ff_target_mcp_ics_cell_second_row. (exists mcp_gap_ics_cell_second_row_bound. mcp_gap_ics_cell_second_row_bound + S (ff_index_mcp_ics_cell_second_row) = (w)) -> (((exists fs_h_mcp_ics_cell_second_row_source. fs_h_mcp_ics_cell_second_row_source + S (ff_source_mcp_ics_cell_second_row) = S ((S (((row) * (w)) + (1) * ff_index_mcp_ics_cell_second_row)) * ac)) /\ exists fs_q_mcp_ics_cell_second_row_source. ab = fs_q_mcp_ics_cell_second_row_source * S ((S (((row) * (w)) + (1) * ff_index_mcp_ics_cell_second_row)) * ac) + (ff_source_mcp_ics_cell_second_row))) -> (((exists fs_h_mcp_ics_cell_second_row_target. fs_h_mcp_ics_cell_second_row_target + S (ff_target_mcp_ics_cell_second_row) = S ((S (ff_index_mcp_ics_cell_second_row)) * ff_left_scale_mcp_cell_ics_cell_second)) /\ exists fs_q_mcp_ics_cell_second_row_target. ff_left_mcp_cell_ics_cell_second = fs_q_mcp_ics_cell_second_row_target * S ((S (ff_index_mcp_ics_cell_second_row)) * ff_left_scale_mcp_cell_ics_cell_second) + (ff_target_mcp_ics_cell_second_row))) -> ff_target_mcp_ics_cell_second_row = ff_source_mcp_ics_cell_second_row) /\ ((forall ff_index_mcp_ics_cell_second_column ff_source_mcp_ics_cell_second_column ff_target_mcp_ics_cell_second_column. (exists mcp_gap_ics_cell_second_column_bound. mcp_gap_ics_cell_second_column_bound + S (ff_index_mcp_ics_cell_second_column) = (w)) -> (((exists fs_h_mcp_ics_cell_second_column_source. fs_h_mcp_ics_cell_second_column_source + S (ff_source_mcp_ics_cell_second_column) = S ((S ((0) + (1) * ff_index_mcp_ics_cell_second_column)) * cc)) /\ exists fs_q_mcp_ics_cell_second_column_source. cb = fs_q_mcp_ics_cell_second_column_source * S ((S ((0) + (1) * ff_index_mcp_ics_cell_second_column)) * cc) + (ff_source_mcp_ics_cell_second_column))) -> (((exists fs_h_mcp_ics_cell_second_column_target. fs_h_mcp_ics_cell_second_column_target + S (ff_target_mcp_ics_cell_second_column) = S ((S (ff_index_mcp_ics_cell_second_column)) * ff_right_scale_mcp_cell_ics_cell_second)) /\ exists fs_q_mcp_ics_cell_second_column_target. ff_right_mcp_cell_ics_cell_second = fs_q_mcp_ics_cell_second_column_target * S ((S (ff_index_mcp_ics_cell_second_column)) * ff_right_scale_mcp_cell_ics_cell_second) + (ff_target_mcp_ics_cell_second_column))) -> ff_target_mcp_ics_cell_second_column = ff_source_mcp_ics_cell_second_column) /\ (exists ff_code_dot_mcp_ics_cell_second_dot ff_scale_dot_mcp_ics_cell_second_dot. ((forall fpmp_index_dot_mcp_ics_cell_second_dot_pointwise fpmp_left_dot_mcp_ics_cell_second_dot_pointwise fpmp_right_dot_mcp_ics_cell_second_dot_pointwise fpmp_target_dot_mcp_ics_cell_second_dot_pointwise. (exists fpmp_gap_dot_mcp_ics_cell_second_dot_pointwise. fpmp_gap_dot_mcp_ics_cell_second_dot_pointwise + S fpmp_index_dot_mcp_ics_cell_second_dot_pointwise = w) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_second_dot_pointwise_left. ff_h_fpmp_dot_mcp_ics_cell_second_dot_pointwise_left + S (fpmp_left_dot_mcp_ics_cell_second_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_second_dot_pointwise)) * ff_left_scale_mcp_cell_ics_cell_second)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_second_dot_pointwise_left. ff_left_mcp_cell_ics_cell_second = ff_q_fpmp_dot_mcp_ics_cell_second_dot_pointwise_left * S ((S (fpmp_index_dot_mcp_ics_cell_second_dot_pointwise)) * ff_left_scale_mcp_cell_ics_cell_second) + (fpmp_left_dot_mcp_ics_cell_second_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_second_dot_pointwise_right. ff_h_fpmp_dot_mcp_ics_cell_second_dot_pointwise_right + S (fpmp_right_dot_mcp_ics_cell_second_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_second_dot_pointwise)) * ff_right_scale_mcp_cell_ics_cell_second)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_second_dot_pointwise_right. ff_right_mcp_cell_ics_cell_second = ff_q_fpmp_dot_mcp_ics_cell_second_dot_pointwise_right * S ((S (fpmp_index_dot_mcp_ics_cell_second_dot_pointwise)) * ff_right_scale_mcp_cell_ics_cell_second) + (fpmp_right_dot_mcp_ics_cell_second_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_second_dot_pointwise_target. ff_h_fpmp_dot_mcp_ics_cell_second_dot_pointwise_target + S (fpmp_target_dot_mcp_ics_cell_second_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_second_dot_pointwise)) * ff_scale_dot_mcp_ics_cell_second_dot)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_second_dot_pointwise_target. ff_code_dot_mcp_ics_cell_second_dot = ff_q_fpmp_dot_mcp_ics_cell_second_dot_pointwise_target * S ((S (fpmp_index_dot_mcp_ics_cell_second_dot_pointwise)) * ff_scale_dot_mcp_ics_cell_second_dot) + (fpmp_target_dot_mcp_ics_cell_second_dot_pointwise))) -> fpmp_target_dot_mcp_ics_cell_second_dot_pointwise = fpmp_left_dot_mcp_ics_cell_second_dot_pointwise * fpmp_right_dot_mcp_ics_cell_second_dot_pointwise) /\ (exists ff_u_dot_mcp_ics_cell_second_dot_sum ff_v_dot_mcp_ics_cell_second_dot_sum. ((((exists ff_h_dot_mcp_ics_cell_second_dot_sum_start. ff_h_dot_mcp_ics_cell_second_dot_sum_start + S (0) = S ((S (0)) * ff_v_dot_mcp_ics_cell_second_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_second_dot_sum_start. ff_u_dot_mcp_ics_cell_second_dot_sum = ff_q_dot_mcp_ics_cell_second_dot_sum_start * S ((S (0)) * ff_v_dot_mcp_ics_cell_second_dot_sum) + (0))) /\ ((((exists ff_h_dot_mcp_ics_cell_second_dot_sum_terminal. ff_h_dot_mcp_ics_cell_second_dot_sum_terminal + S (M) = S ((S (w)) * ff_v_dot_mcp_ics_cell_second_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_second_dot_sum_terminal. ff_u_dot_mcp_ics_cell_second_dot_sum = ff_q_dot_mcp_ics_cell_second_dot_sum_terminal * S ((S (w)) * ff_v_dot_mcp_ics_cell_second_dot_sum) + (M))) /\ forall ff_i_dot_mcp_ics_cell_second_dot_sum. (exists ff_lt_dot_mcp_ics_cell_second_dot_sum_bound. ff_lt_dot_mcp_ics_cell_second_dot_sum_bound + S ff_i_dot_mcp_ics_cell_second_dot_sum = w) -> exists ff_a_dot_mcp_ics_cell_second_dot_sum ff_r_dot_mcp_ics_cell_second_dot_sum ff_s_dot_mcp_ics_cell_second_dot_sum. ((((exists ff_h_dot_mcp_ics_cell_second_dot_sum_summand. ff_h_dot_mcp_ics_cell_second_dot_sum_summand + S (ff_a_dot_mcp_ics_cell_second_dot_sum) = S ((S (ff_i_dot_mcp_ics_cell_second_dot_sum)) * ff_scale_dot_mcp_ics_cell_second_dot)) /\ exists ff_q_dot_mcp_ics_cell_second_dot_sum_summand. ff_code_dot_mcp_ics_cell_second_dot = ff_q_dot_mcp_ics_cell_second_dot_sum_summand * S ((S (ff_i_dot_mcp_ics_cell_second_dot_sum)) * ff_scale_dot_mcp_ics_cell_second_dot) + (ff_a_dot_mcp_ics_cell_second_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_cell_second_dot_sum_partial. ff_h_dot_mcp_ics_cell_second_dot_sum_partial + S (ff_r_dot_mcp_ics_cell_second_dot_sum) = S ((S (ff_i_dot_mcp_ics_cell_second_dot_sum)) * ff_v_dot_mcp_ics_cell_second_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_second_dot_sum_partial. ff_u_dot_mcp_ics_cell_second_dot_sum = ff_q_dot_mcp_ics_cell_second_dot_sum_partial * S ((S (ff_i_dot_mcp_ics_cell_second_dot_sum)) * ff_v_dot_mcp_ics_cell_second_dot_sum) + (ff_r_dot_mcp_ics_cell_second_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_cell_second_dot_sum_successor. ff_h_dot_mcp_ics_cell_second_dot_sum_successor + S (ff_s_dot_mcp_ics_cell_second_dot_sum) = S ((S (S ff_i_dot_mcp_ics_cell_second_dot_sum)) * ff_v_dot_mcp_ics_cell_second_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_second_dot_sum_successor. ff_u_dot_mcp_ics_cell_second_dot_sum = ff_q_dot_mcp_ics_cell_second_dot_sum_successor * S ((S (S ff_i_dot_mcp_ics_cell_second_dot_sum)) * ff_v_dot_mcp_ics_cell_second_dot_sum) + (ff_s_dot_mcp_ics_cell_second_dot_sum))) /\ ff_s_dot_mcp_ics_cell_second_dot_sum = ff_r_dot_mcp_ics_cell_second_dot_sum + ff_a_dot_mcp_ics_cell_second_dot_sum))))))))))) -> (exists ff_left_mcp_cell_ics_cell_third ff_left_scale_mcp_cell_ics_cell_third ff_right_mcp_cell_ics_cell_third ff_right_scale_mcp_cell_ics_cell_third. ((forall ff_index_mcp_ics_cell_third_row ff_source_mcp_ics_cell_third_row ff_target_mcp_ics_cell_third_row. (exists mcp_gap_ics_cell_third_row_bound. mcp_gap_ics_cell_third_row_bound + S (ff_index_mcp_ics_cell_third_row) = (w)) -> (((exists fs_h_mcp_ics_cell_third_row_source. fs_h_mcp_ics_cell_third_row_source + S (ff_source_mcp_ics_cell_third_row) = S ((S (((row) * (w)) + (1) * ff_index_mcp_ics_cell_third_row)) * ac)) /\ exists fs_q_mcp_ics_cell_third_row_source. ab = fs_q_mcp_ics_cell_third_row_source * S ((S (((row) * (w)) + (1) * ff_index_mcp_ics_cell_third_row)) * ac) + (ff_source_mcp_ics_cell_third_row))) -> (((exists fs_h_mcp_ics_cell_third_row_target. fs_h_mcp_ics_cell_third_row_target + S (ff_target_mcp_ics_cell_third_row) = S ((S (ff_index_mcp_ics_cell_third_row)) * ff_left_scale_mcp_cell_ics_cell_third)) /\ exists fs_q_mcp_ics_cell_third_row_target. ff_left_mcp_cell_ics_cell_third = fs_q_mcp_ics_cell_third_row_target * S ((S (ff_index_mcp_ics_cell_third_row)) * ff_left_scale_mcp_cell_ics_cell_third) + (ff_target_mcp_ics_cell_third_row))) -> ff_target_mcp_ics_cell_third_row = ff_source_mcp_ics_cell_third_row) /\ ((forall ff_index_mcp_ics_cell_third_column ff_source_mcp_ics_cell_third_column ff_target_mcp_ics_cell_third_column. (exists mcp_gap_ics_cell_third_column_bound. mcp_gap_ics_cell_third_column_bound + S (ff_index_mcp_ics_cell_third_column) = (w)) -> (((exists fs_h_mcp_ics_cell_third_column_source. fs_h_mcp_ics_cell_third_column_source + S (ff_source_mcp_ics_cell_third_column) = S ((S ((0) + (1) * ff_index_mcp_ics_cell_third_column)) * dc)) /\ exists fs_q_mcp_ics_cell_third_column_source. db = fs_q_mcp_ics_cell_third_column_source * S ((S ((0) + (1) * ff_index_mcp_ics_cell_third_column)) * dc) + (ff_source_mcp_ics_cell_third_column))) -> (((exists fs_h_mcp_ics_cell_third_column_target. fs_h_mcp_ics_cell_third_column_target + S (ff_target_mcp_ics_cell_third_column) = S ((S (ff_index_mcp_ics_cell_third_column)) * ff_right_scale_mcp_cell_ics_cell_third)) /\ exists fs_q_mcp_ics_cell_third_column_target. ff_right_mcp_cell_ics_cell_third = fs_q_mcp_ics_cell_third_column_target * S ((S (ff_index_mcp_ics_cell_third_column)) * ff_right_scale_mcp_cell_ics_cell_third) + (ff_target_mcp_ics_cell_third_column))) -> ff_target_mcp_ics_cell_third_column = ff_source_mcp_ics_cell_third_column) /\ (exists ff_code_dot_mcp_ics_cell_third_dot ff_scale_dot_mcp_ics_cell_third_dot. ((forall fpmp_index_dot_mcp_ics_cell_third_dot_pointwise fpmp_left_dot_mcp_ics_cell_third_dot_pointwise fpmp_right_dot_mcp_ics_cell_third_dot_pointwise fpmp_target_dot_mcp_ics_cell_third_dot_pointwise. (exists fpmp_gap_dot_mcp_ics_cell_third_dot_pointwise. fpmp_gap_dot_mcp_ics_cell_third_dot_pointwise + S fpmp_index_dot_mcp_ics_cell_third_dot_pointwise = w) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_third_dot_pointwise_left. ff_h_fpmp_dot_mcp_ics_cell_third_dot_pointwise_left + S (fpmp_left_dot_mcp_ics_cell_third_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_third_dot_pointwise)) * ff_left_scale_mcp_cell_ics_cell_third)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_third_dot_pointwise_left. ff_left_mcp_cell_ics_cell_third = ff_q_fpmp_dot_mcp_ics_cell_third_dot_pointwise_left * S ((S (fpmp_index_dot_mcp_ics_cell_third_dot_pointwise)) * ff_left_scale_mcp_cell_ics_cell_third) + (fpmp_left_dot_mcp_ics_cell_third_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_third_dot_pointwise_right. ff_h_fpmp_dot_mcp_ics_cell_third_dot_pointwise_right + S (fpmp_right_dot_mcp_ics_cell_third_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_third_dot_pointwise)) * ff_right_scale_mcp_cell_ics_cell_third)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_third_dot_pointwise_right. ff_right_mcp_cell_ics_cell_third = ff_q_fpmp_dot_mcp_ics_cell_third_dot_pointwise_right * S ((S (fpmp_index_dot_mcp_ics_cell_third_dot_pointwise)) * ff_right_scale_mcp_cell_ics_cell_third) + (fpmp_right_dot_mcp_ics_cell_third_dot_pointwise))) -> (((exists ff_h_fpmp_dot_mcp_ics_cell_third_dot_pointwise_target. ff_h_fpmp_dot_mcp_ics_cell_third_dot_pointwise_target + S (fpmp_target_dot_mcp_ics_cell_third_dot_pointwise) = S ((S (fpmp_index_dot_mcp_ics_cell_third_dot_pointwise)) * ff_scale_dot_mcp_ics_cell_third_dot)) /\ exists ff_q_fpmp_dot_mcp_ics_cell_third_dot_pointwise_target. ff_code_dot_mcp_ics_cell_third_dot = ff_q_fpmp_dot_mcp_ics_cell_third_dot_pointwise_target * S ((S (fpmp_index_dot_mcp_ics_cell_third_dot_pointwise)) * ff_scale_dot_mcp_ics_cell_third_dot) + (fpmp_target_dot_mcp_ics_cell_third_dot_pointwise))) -> fpmp_target_dot_mcp_ics_cell_third_dot_pointwise = fpmp_left_dot_mcp_ics_cell_third_dot_pointwise * fpmp_right_dot_mcp_ics_cell_third_dot_pointwise) /\ (exists ff_u_dot_mcp_ics_cell_third_dot_sum ff_v_dot_mcp_ics_cell_third_dot_sum. ((((exists ff_h_dot_mcp_ics_cell_third_dot_sum_start. ff_h_dot_mcp_ics_cell_third_dot_sum_start + S (0) = S ((S (0)) * ff_v_dot_mcp_ics_cell_third_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_third_dot_sum_start. ff_u_dot_mcp_ics_cell_third_dot_sum = ff_q_dot_mcp_ics_cell_third_dot_sum_start * S ((S (0)) * ff_v_dot_mcp_ics_cell_third_dot_sum) + (0))) /\ ((((exists ff_h_dot_mcp_ics_cell_third_dot_sum_terminal. ff_h_dot_mcp_ics_cell_third_dot_sum_terminal + S (N) = S ((S (w)) * ff_v_dot_mcp_ics_cell_third_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_third_dot_sum_terminal. ff_u_dot_mcp_ics_cell_third_dot_sum = ff_q_dot_mcp_ics_cell_third_dot_sum_terminal * S ((S (w)) * ff_v_dot_mcp_ics_cell_third_dot_sum) + (N))) /\ forall ff_i_dot_mcp_ics_cell_third_dot_sum. (exists ff_lt_dot_mcp_ics_cell_third_dot_sum_bound. ff_lt_dot_mcp_ics_cell_third_dot_sum_bound + S ff_i_dot_mcp_ics_cell_third_dot_sum = w) -> exists ff_a_dot_mcp_ics_cell_third_dot_sum ff_r_dot_mcp_ics_cell_third_dot_sum ff_s_dot_mcp_ics_cell_third_dot_sum. ((((exists ff_h_dot_mcp_ics_cell_third_dot_sum_summand. ff_h_dot_mcp_ics_cell_third_dot_sum_summand + S (ff_a_dot_mcp_ics_cell_third_dot_sum) = S ((S (ff_i_dot_mcp_ics_cell_third_dot_sum)) * ff_scale_dot_mcp_ics_cell_third_dot)) /\ exists ff_q_dot_mcp_ics_cell_third_dot_sum_summand. ff_code_dot_mcp_ics_cell_third_dot = ff_q_dot_mcp_ics_cell_third_dot_sum_summand * S ((S (ff_i_dot_mcp_ics_cell_third_dot_sum)) * ff_scale_dot_mcp_ics_cell_third_dot) + (ff_a_dot_mcp_ics_cell_third_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_cell_third_dot_sum_partial. ff_h_dot_mcp_ics_cell_third_dot_sum_partial + S (ff_r_dot_mcp_ics_cell_third_dot_sum) = S ((S (ff_i_dot_mcp_ics_cell_third_dot_sum)) * ff_v_dot_mcp_ics_cell_third_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_third_dot_sum_partial. ff_u_dot_mcp_ics_cell_third_dot_sum = ff_q_dot_mcp_ics_cell_third_dot_sum_partial * S ((S (ff_i_dot_mcp_ics_cell_third_dot_sum)) * ff_v_dot_mcp_ics_cell_third_dot_sum) + (ff_r_dot_mcp_ics_cell_third_dot_sum))) /\ ((((exists ff_h_dot_mcp_ics_cell_third_dot_sum_successor. ff_h_dot_mcp_ics_cell_third_dot_sum_successor + S (ff_s_dot_mcp_ics_cell_third_dot_sum) = S ((S (S ff_i_dot_mcp_ics_cell_third_dot_sum)) * ff_v_dot_mcp_ics_cell_third_dot_sum)) /\ exists ff_q_dot_mcp_ics_cell_third_dot_sum_successor. ff_u_dot_mcp_ics_cell_third_dot_sum = ff_q_dot_mcp_ics_cell_third_dot_sum_successor * S ((S (S ff_i_dot_mcp_ics_cell_third_dot_sum)) * ff_v_dot_mcp_ics_cell_third_dot_sum) + (ff_s_dot_mcp_ics_cell_third_dot_sum))) /\ ff_s_dot_mcp_ics_cell_third_dot_sum = ff_r_dot_mcp_ics_cell_third_dot_sum + ff_a_dot_mcp_ics_cell_third_dot_sum))))))))))) -> L + M = NConstructive proof overview
Generated structural guide
Each genuine row-by-column multiplication cell distributes over an actual coded sum of coefficient vectors; the old affine row and column slices are aligned at every coordinate.
The unchanged tactic script uses 5 declared prerequisites and contains 167 exact native proof lines.
Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
DL0064 integer_span_dot_product_pointwise_add beta_at_exists Stable theorem; checked-use authorized mul_add Stable theorem; checked-use authorized one_mul Stable theorem; checked-use authorized zero_add Stable theorem; checked-use authorizedDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (1)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–17
03Separate the logical casesL18–27
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L18
cases hfirst - L19
cases hfirst_witness - L20
cases hfirst_witness_witness - L21
cases hfirst_witness_witness_witness - L22
cases hfirst_witness_witness_witness_witness - L23
cases hfirst_witness_witness_witness_witness_right - L24
cases hsecond - L25
cases hsecond_witness - L26
cases hsecond_witness_witness - L27
cases hsecond_witness_witness_witness
04Separate the logical casesL28–35
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L28
cases hsecond_witness_witness_witness_witness - L29
cases hsecond_witness_witness_witness_witness_right - L30
cases hthird - L31
cases hthird_witness - L32
cases hthird_witness_witness - L33
cases hthird_witness_witness_witness - L34
cases hthird_witness_witness_witness_witness - L35
cases hthird_witness_witness_witness_witness_right
05Use earlier factsL36–45
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L36
specialize integer_span_dot_product_pointwise_add (x) - L37
specialize integer_span_dot_product_pointwise_add (x1) - L38
specialize integer_span_dot_product_pointwise_add (x2) - L39
specialize integer_span_dot_product_pointwise_add (x3) - L40
specialize integer_span_dot_product_pointwise_add (x4) - L41
specialize integer_span_dot_product_pointwise_add (x5) - L42
specialize integer_span_dot_product_pointwise_add (x6) - L43
specialize integer_span_dot_product_pointwise_add (x7) - L44
specialize integer_span_dot_product_pointwise_add (x8) - L45
specialize integer_span_dot_product_pointwise_add (x9)
06Use earlier factsL46–55
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L46
specialize integer_span_dot_product_pointwise_add (x10) - L47
specialize integer_span_dot_product_pointwise_add (x11) - L48
specialize integer_span_dot_product_pointwise_add (w) - L49
specialize integer_span_dot_product_pointwise_add (L) - L50
specialize integer_span_dot_product_pointwise_add (M) - L51
specialize integer_span_dot_product_pointwise_add (N) - L52
apply integer_span_dot_product_pointwise_add - L53
exact hfirst_witness_witness_witness_witness_right_right - L54
exact hsecond_witness_witness_witness_witness_right_right - L55
exact hthird_witness_witness_witness_witness_right_right
07Fix variables and assumptionsL56–65
08Fix variables and assumptionsL66–69
09Establish hmatrixL70–74
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L70
have hmatrix : exists value. (((exists fs_h_ics_cell_matrix_source. fs_h_ics_cell_matrix_source + S (value) = S ((S (row * w + 1 * i)) * ac)) /\ exists fs_q_ics_cell_matrix_source. ab = fs_q_ics_cell_matrix_source * S ((S (row * w + 1 * i)) * ac) + (value))) - L71
specialize beta_at_exists (ab) - L72
specialize beta_at_exists (ac) - L73
specialize beta_at_exists (row * w + 1 * i) - L74
apply beta_at_exists
10Separate the logical casesL75–75
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L75
cases hmatrix
11Establish hleftL76–80
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L76
have hleft : exists value. (((exists fs_h_ics_cell_coeff_left. fs_h_ics_cell_coeff_left + S (value) = S ((S (i)) * bc)) /\ exists fs_q_ics_cell_coeff_left. bb = fs_q_ics_cell_coeff_left * S ((S (i)) * bc) + (value))) - L77
specialize beta_at_exists (bb) - L78
specialize beta_at_exists (bc) - L79
specialize beta_at_exists (i) - L80
apply beta_at_exists
12Separate the logical casesL81–81
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L81
cases hleft
13Establish hrightL82–86
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L82
have hright : exists value. (((exists fs_h_ics_cell_coeff_right. fs_h_ics_cell_coeff_right + S (value) = S ((S (i)) * cc)) /\ exists fs_q_ics_cell_coeff_right. cb = fs_q_ics_cell_coeff_right * S ((S (i)) * cc) + (value))) - L83
specialize beta_at_exists (cb) - L84
specialize beta_at_exists (cc) - L85
specialize beta_at_exists (i) - L86
apply beta_at_exists
14Separate the logical casesL87–87
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L87
cases hright
15Establish htotalL88–92
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L88
have htotal : exists value. (((exists fs_h_ics_cell_coeff_total. fs_h_ics_cell_coeff_total + S (value) = S ((S (i)) * dc)) /\ exists fs_q_ics_cell_coeff_total. db = fs_q_ics_cell_coeff_total * S ((S (i)) * dc) + (value))) - L89
specialize beta_at_exists (db) - L90
specialize beta_at_exists (dc) - L91
specialize beta_at_exists (i) - L92
apply beta_at_exists
16Separate the logical casesL93–93
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L93
cases htotal
17Establish haeqL94–101
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hfirst witness witness witness witness left.
- L94
have haeq : a = x12 - L95
specialize hfirst_witness_witness_witness_witness_left (i) - L96
specialize hfirst_witness_witness_witness_witness_left (x12) - L97
specialize hfirst_witness_witness_witness_witness_left (a) - L98
apply hfirst_witness_witness_witness_witness_left - L99
exact hi - L100
exact hmatrix_witness - L101
exact ha
18Establish hceqL102–109
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hsecond witness witness witness witness left.
- L102
have hceq : c = x12 - L103
specialize hsecond_witness_witness_witness_witness_left (i) - L104
specialize hsecond_witness_witness_witness_witness_left (x12) - L105
specialize hsecond_witness_witness_witness_witness_left (c) - L106
apply hsecond_witness_witness_witness_witness_left - L107
exact hi - L108
exact hmatrix_witness - L109
exact hc
19Establish heeqL110–117
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hthird witness witness witness witness left.
- L110
have heeq : e = x12 - L111
specialize hthird_witness_witness_witness_witness_left (i) - L112
specialize hthird_witness_witness_witness_witness_left (x12) - L113
specialize hthird_witness_witness_witness_witness_left (e) - L114
apply hthird_witness_witness_witness_witness_left - L115
exact hi - L116
exact hmatrix_witness - L117
exact he
20Establish hindexL118–119
21Establish hbeqL120–129
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hfirst witness witness witness witness right left.
- L120
have hbeq : b = x13 - L121
specialize hfirst_witness_witness_witness_witness_right_left (i) - L122
specialize hfirst_witness_witness_witness_witness_right_left (x13) - L123
specialize hfirst_witness_witness_witness_witness_right_left (b) - L124
apply hfirst_witness_witness_witness_witness_right_left - L125
exact hi - L126
rewrite hindex - L127
rewrite hindex - L128
exact hleft_witness - L129
exact hb
22Establish hdeqL130–139
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hsecond witness witness witness witness right left.
- L130
have hdeq : d = x14 - L131
specialize hsecond_witness_witness_witness_witness_right_left (i) - L132
specialize hsecond_witness_witness_witness_witness_right_left (x14) - L133
specialize hsecond_witness_witness_witness_witness_right_left (d) - L134
apply hsecond_witness_witness_witness_witness_right_left - L135
exact hi - L136
rewrite hindex - L137
rewrite hindex - L138
exact hright_witness - L139
exact hd
23Establish hfeqL140–149
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hthird witness witness witness witness right left.
- L140
have hfeq : f = x15 - L141
specialize hthird_witness_witness_witness_witness_right_left (i) - L142
specialize hthird_witness_witness_witness_witness_right_left (x15) - L143
specialize hthird_witness_witness_witness_witness_right_left (f) - L144
apply hthird_witness_witness_witness_witness_right_left - L145
exact hi - L146
rewrite hindex - L147
rewrite hindex - L148
exact htotal_witness - L149
exact hf
24Establish hcoeffL150–159
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hadd.
25Calculate and transport equalitiesL160–166
26Use earlier factsL167–167
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L167
apply mul_add
Original exact command ledger · 167 lines
- 0001
intro ab - 0002
intro ac - 0003
intro bb - 0004
intro bc - 0005
intro cb - 0006
intro cc - 0007
intro db - 0008
intro dc - 0009
intro w - 0010
intro row - 0011
intro L - 0012
intro M - 0013
intro N - 0014
intro hadd - 0015
intro hfirst - 0016
intro hsecond - 0017
intro hthird - 0018
cases hfirst - 0019
cases hfirst_witness - 0020
cases hfirst_witness_witness - 0021
cases hfirst_witness_witness_witness - 0022
cases hfirst_witness_witness_witness_witness - 0023
cases hfirst_witness_witness_witness_witness_right - 0024
cases hsecond - 0025
cases hsecond_witness - 0026
cases hsecond_witness_witness - 0027
cases hsecond_witness_witness_witness - 0028
cases hsecond_witness_witness_witness_witness - 0029
cases hsecond_witness_witness_witness_witness_right - 0030
cases hthird - 0031
cases hthird_witness - 0032
cases hthird_witness_witness - 0033
cases hthird_witness_witness_witness - 0034
cases hthird_witness_witness_witness_witness - 0035
cases hthird_witness_witness_witness_witness_right - 0036
specialize integer_span_dot_product_pointwise_add (x) - 0037
specialize integer_span_dot_product_pointwise_add (x1) - 0038
specialize integer_span_dot_product_pointwise_add (x2) - 0039
specialize integer_span_dot_product_pointwise_add (x3) - 0040
specialize integer_span_dot_product_pointwise_add (x4) - 0041
specialize integer_span_dot_product_pointwise_add (x5) - 0042
specialize integer_span_dot_product_pointwise_add (x6) - 0043
specialize integer_span_dot_product_pointwise_add (x7) - 0044
specialize integer_span_dot_product_pointwise_add (x8) - 0045
specialize integer_span_dot_product_pointwise_add (x9) - 0046
specialize integer_span_dot_product_pointwise_add (x10) - 0047
specialize integer_span_dot_product_pointwise_add (x11) - 0048
specialize integer_span_dot_product_pointwise_add (w) - 0049
specialize integer_span_dot_product_pointwise_add (L) - 0050
specialize integer_span_dot_product_pointwise_add (M) - 0051
specialize integer_span_dot_product_pointwise_add (N) - 0052
apply integer_span_dot_product_pointwise_add - 0053
exact hfirst_witness_witness_witness_witness_right_right - 0054
exact hsecond_witness_witness_witness_witness_right_right - 0055
exact hthird_witness_witness_witness_witness_right_right - 0056
intro i - 0057
intro a - 0058
intro b - 0059
intro c - 0060
intro d - 0061
intro e - 0062
intro f - 0063
intro hi - 0064
intro ha - 0065
intro hb - 0066
intro hc - 0067
intro hd - 0068
intro he - 0069
intro hf - 0070
have hmatrix : exists value. (((exists fs_h_ics_cell_matrix_source. fs_h_ics_cell_matrix_source + S (value) = S ((S (row * w + 1 * i)) * ac)) /\ exists fs_q_ics_cell_matrix_source. ab = fs_q_ics_cell_matrix_source * S ((S (row * w + 1 * i)) * ac) + (value))) - 0071
specialize beta_at_exists (ab) - 0072
specialize beta_at_exists (ac) - 0073
specialize beta_at_exists (row * w + 1 * i) - 0074
apply beta_at_exists - 0075
cases hmatrix - 0076
have hleft : exists value. (((exists fs_h_ics_cell_coeff_left. fs_h_ics_cell_coeff_left + S (value) = S ((S (i)) * bc)) /\ exists fs_q_ics_cell_coeff_left. bb = fs_q_ics_cell_coeff_left * S ((S (i)) * bc) + (value))) - 0077
specialize beta_at_exists (bb) - 0078
specialize beta_at_exists (bc) - 0079
specialize beta_at_exists (i) - 0080
apply beta_at_exists - 0081
cases hleft - 0082
have hright : exists value. (((exists fs_h_ics_cell_coeff_right. fs_h_ics_cell_coeff_right + S (value) = S ((S (i)) * cc)) /\ exists fs_q_ics_cell_coeff_right. cb = fs_q_ics_cell_coeff_right * S ((S (i)) * cc) + (value))) - 0083
specialize beta_at_exists (cb) - 0084
specialize beta_at_exists (cc) - 0085
specialize beta_at_exists (i) - 0086
apply beta_at_exists - 0087
cases hright - 0088
have htotal : exists value. (((exists fs_h_ics_cell_coeff_total. fs_h_ics_cell_coeff_total + S (value) = S ((S (i)) * dc)) /\ exists fs_q_ics_cell_coeff_total. db = fs_q_ics_cell_coeff_total * S ((S (i)) * dc) + (value))) - 0089
specialize beta_at_exists (db) - 0090
specialize beta_at_exists (dc) - 0091
specialize beta_at_exists (i) - 0092
apply beta_at_exists - 0093
cases htotal - 0094
have haeq : a = x12 - 0095
specialize hfirst_witness_witness_witness_witness_left (i) - 0096
specialize hfirst_witness_witness_witness_witness_left (x12) - 0097
specialize hfirst_witness_witness_witness_witness_left (a) - 0098
apply hfirst_witness_witness_witness_witness_left - 0099
exact hi - 0100
exact hmatrix_witness - 0101
exact ha - 0102
have hceq : c = x12 - 0103
specialize hsecond_witness_witness_witness_witness_left (i) - 0104
specialize hsecond_witness_witness_witness_witness_left (x12) - 0105
specialize hsecond_witness_witness_witness_witness_left (c) - 0106
apply hsecond_witness_witness_witness_witness_left - 0107
exact hi - 0108
exact hmatrix_witness - 0109
exact hc - 0110
have heeq : e = x12 - 0111
specialize hthird_witness_witness_witness_witness_left (i) - 0112
specialize hthird_witness_witness_witness_witness_left (x12) - 0113
specialize hthird_witness_witness_witness_witness_left (e) - 0114
apply hthird_witness_witness_witness_witness_left - 0115
exact hi - 0116
exact hmatrix_witness - 0117
exact he - 0118
have hindex : 0 + 1 * i = i - 0119
simp [one_mul, zero_add] - 0120
have hbeq : b = x13 - 0121
specialize hfirst_witness_witness_witness_witness_right_left (i) - 0122
specialize hfirst_witness_witness_witness_witness_right_left (x13) - 0123
specialize hfirst_witness_witness_witness_witness_right_left (b) - 0124
apply hfirst_witness_witness_witness_witness_right_left - 0125
exact hi - 0126
rewrite hindex - 0127
rewrite hindex - 0128
exact hleft_witness - 0129
exact hb - 0130
have hdeq : d = x14 - 0131
specialize hsecond_witness_witness_witness_witness_right_left (i) - 0132
specialize hsecond_witness_witness_witness_witness_right_left (x14) - 0133
specialize hsecond_witness_witness_witness_witness_right_left (d) - 0134
apply hsecond_witness_witness_witness_witness_right_left - 0135
exact hi - 0136
rewrite hindex - 0137
rewrite hindex - 0138
exact hright_witness - 0139
exact hd - 0140
have hfeq : f = x15 - 0141
specialize hthird_witness_witness_witness_witness_right_left (i) - 0142
specialize hthird_witness_witness_witness_witness_right_left (x15) - 0143
specialize hthird_witness_witness_witness_witness_right_left (f) - 0144
apply hthird_witness_witness_witness_witness_right_left - 0145
exact hi - 0146
rewrite hindex - 0147
rewrite hindex - 0148
exact htotal_witness - 0149
exact hf - 0150
have hcoeff : x15 = x13 + x14 - 0151
specialize hadd (i) - 0152
specialize hadd (x13) - 0153
specialize hadd (x14) - 0154
specialize hadd (x15) - 0155
apply hadd - 0156
exact hi - 0157
exact hleft_witness - 0158
exact hright_witness - 0159
exact htotal_witness - 0160
rewrite haeq - 0161
rewrite hbeq - 0162
rewrite hceq - 0163
rewrite hdeq - 0164
rewrite heeq - 0165
rewrite hfeq - 0166
rewrite hcoeff - 0167
apply mul_add