Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Exact expanded first-order arithmetic statement
forall m F R n z. (((exists dst_positive_code_flatten_rowssource_table dst_positive_scale_flatten_rowssource_table dst_negative_code_flatten_rowssource_table dst_negative_scale_flatten_rowssource_table. (((F) = (((((dst_positive_code_flatten_rowssource_table) + (dst_positive_scale_flatten_rowssource_table)) * S ((dst_positive_code_flatten_rowssource_table) + (dst_positive_scale_flatten_rowssource_table)) + ((dst_positive_scale_flatten_rowssource_table) + (dst_positive_scale_flatten_rowssource_table))) + (((dst_negative_code_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)) * S ((dst_negative_code_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)) + ((dst_negative_scale_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)))) * S ((((dst_positive_code_flatten_rowssource_table) + (dst_positive_scale_flatten_rowssource_table)) * S ((dst_positive_code_flatten_rowssource_table) + (dst_positive_scale_flatten_rowssource_table)) + ((dst_positive_scale_flatten_rowssource_table) + (dst_positive_scale_flatten_rowssource_table))) + (((dst_negative_code_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)) * S ((dst_negative_code_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)) + ((dst_negative_scale_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)))) + ((((dst_negative_code_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)) * S ((dst_negative_code_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)) + ((dst_negative_scale_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table))) + (((dst_negative_code_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)) * S ((dst_negative_code_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)) + ((dst_negative_scale_flatten_rowssource_table) + (dst_negative_scale_flatten_rowssource_table)))))) /\ (forall dst_index_flatten_rowssource_table. (exists pvs_le_gap_flatten_rowssource_tabledomain. pvs_le_gap_flatten_rowssource_tabledomain + (dst_index_flatten_rowssource_table) = (0)) -> exists dst_positive_flatten_rowssource_table dst_negative_flatten_rowssource_table dst_value_flatten_rowssource_table. ((((exists ff_h_pvs_flatten_rowssource_tableentrypositive. ff_h_pvs_flatten_rowssource_tableentrypositive + S (dst_positive_flatten_rowssource_table) = S ((S (dst_index_flatten_rowssource_table)) * dst_positive_scale_flatten_rowssource_table)) /\ exists ff_q_pvs_flatten_rowssource_tableentrypositive. dst_positive_code_flatten_rowssource_table = ff_q_pvs_flatten_rowssource_tableentrypositive * S ((S (dst_index_flatten_rowssource_table)) * dst_positive_scale_flatten_rowssource_table) + (dst_positive_flatten_rowssource_table))) /\ (((((exists ff_h_pvs_flatten_rowssource_tableentrynegative. ff_h_pvs_flatten_rowssource_tableentrynegative + S (dst_negative_flatten_rowssource_table) = S ((S (dst_index_flatten_rowssource_table)) * dst_negative_scale_flatten_rowssource_table)) /\ exists ff_q_pvs_flatten_rowssource_tableentrynegative. dst_negative_code_flatten_rowssource_table = ff_q_pvs_flatten_rowssource_tableentrynegative * S ((S (dst_index_flatten_rowssource_table)) * dst_negative_scale_flatten_rowssource_table) + (dst_negative_flatten_rowssource_table))) /\ (exists ge_balance_positive_flatten_rowssource_tableentryvalue ge_balance_negative_flatten_rowssource_tableentryvalue. (((((dst_value_flatten_rowssource_table) = 2 * (ge_balance_positive_flatten_rowssource_tableentryvalue) /\ (ge_balance_negative_flatten_rowssource_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_rowssource_tableentryvaluedecode. (((dst_value_flatten_rowssource_table) = 2 * ge_signed_half_flatten_rowssource_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_rowssource_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_rowssource_tableentryvalue) = S ge_signed_half_flatten_rowssource_tableentryvaluedecode))) /\ ((dst_positive_flatten_rowssource_table) + ge_balance_negative_flatten_rowssource_tableentryvalue = (dst_negative_flatten_rowssource_table) + ge_balance_positive_flatten_rowssource_tableentryvalue))))))))) /\ (((exists dst_positive_code_flatten_rowsrow_table dst_positive_scale_flatten_rowsrow_table dst_negative_code_flatten_rowsrow_table dst_negative_scale_flatten_rowsrow_table. (((R) = (((((dst_positive_code_flatten_rowsrow_table) + (dst_positive_scale_flatten_rowsrow_table)) * S ((dst_positive_code_flatten_rowsrow_table) + (dst_positive_scale_flatten_rowsrow_table)) + ((dst_positive_scale_flatten_rowsrow_table) + (dst_positive_scale_flatten_rowsrow_table))) + (((dst_negative_code_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)) * S ((dst_negative_code_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)) + ((dst_negative_scale_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)))) * S ((((dst_positive_code_flatten_rowsrow_table) + (dst_positive_scale_flatten_rowsrow_table)) * S ((dst_positive_code_flatten_rowsrow_table) + (dst_positive_scale_flatten_rowsrow_table)) + ((dst_positive_scale_flatten_rowsrow_table) + (dst_positive_scale_flatten_rowsrow_table))) + (((dst_negative_code_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)) * S ((dst_negative_code_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)) + ((dst_negative_scale_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)))) + ((((dst_negative_code_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)) * S ((dst_negative_code_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)) + ((dst_negative_scale_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table))) + (((dst_negative_code_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)) * S ((dst_negative_code_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)) + ((dst_negative_scale_flatten_rowsrow_table) + (dst_negative_scale_flatten_rowsrow_table)))))) /\ (forall dst_index_flatten_rowsrow_table. (exists pvs_le_gap_flatten_rowsrow_tabledomain. pvs_le_gap_flatten_rowsrow_tabledomain + (dst_index_flatten_rowsrow_table) = (m)) -> exists dst_positive_flatten_rowsrow_table dst_negative_flatten_rowsrow_table dst_value_flatten_rowsrow_table. ((((exists ff_h_pvs_flatten_rowsrow_tableentrypositive. ff_h_pvs_flatten_rowsrow_tableentrypositive + S (dst_positive_flatten_rowsrow_table) = S ((S (dst_index_flatten_rowsrow_table)) * dst_positive_scale_flatten_rowsrow_table)) /\ exists ff_q_pvs_flatten_rowsrow_tableentrypositive. dst_positive_code_flatten_rowsrow_table = ff_q_pvs_flatten_rowsrow_tableentrypositive * S ((S (dst_index_flatten_rowsrow_table)) * dst_positive_scale_flatten_rowsrow_table) + (dst_positive_flatten_rowsrow_table))) /\ (((((exists ff_h_pvs_flatten_rowsrow_tableentrynegative. ff_h_pvs_flatten_rowsrow_tableentrynegative + S (dst_negative_flatten_rowsrow_table) = S ((S (dst_index_flatten_rowsrow_table)) * dst_negative_scale_flatten_rowsrow_table)) /\ exists ff_q_pvs_flatten_rowsrow_tableentrynegative. dst_negative_code_flatten_rowsrow_table = ff_q_pvs_flatten_rowsrow_tableentrynegative * S ((S (dst_index_flatten_rowsrow_table)) * dst_negative_scale_flatten_rowsrow_table) + (dst_negative_flatten_rowsrow_table))) /\ (exists ge_balance_positive_flatten_rowsrow_tableentryvalue ge_balance_negative_flatten_rowsrow_tableentryvalue. (((((dst_value_flatten_rowsrow_table) = 2 * (ge_balance_positive_flatten_rowsrow_tableentryvalue) /\ (ge_balance_negative_flatten_rowsrow_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_rowsrow_tableentryvaluedecode. (((dst_value_flatten_rowsrow_table) = 2 * ge_signed_half_flatten_rowsrow_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_rowsrow_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_rowsrow_tableentryvalue) = S ge_signed_half_flatten_rowsrow_tableentryvaluedecode))) /\ ((dst_positive_flatten_rowsrow_table) + ge_balance_negative_flatten_rowsrow_tableentryvalue = (dst_negative_flatten_rowsrow_table) + ge_balance_positive_flatten_rowsrow_tableentryvalue))))))))) /\ (forall srt_index_flatten_rows. (exists pvs_gap_flatten_rowsbound. pvs_gap_flatten_rowsbound + S (srt_index_flatten_rows) = (m)) -> exists srt_value_flatten_rows. (((exists dst_positive_code_flatten_rowsrowentry dst_positive_scale_flatten_rowsrowentry dst_negative_code_flatten_rowsrowentry dst_negative_scale_flatten_rowsrowentry dst_positive_flatten_rowsrowentry dst_negative_flatten_rowsrowentry. (((R) = (((((dst_positive_code_flatten_rowsrowentry) + (dst_positive_scale_flatten_rowsrowentry)) * S ((dst_positive_code_flatten_rowsrowentry) + (dst_positive_scale_flatten_rowsrowentry)) + ((dst_positive_scale_flatten_rowsrowentry) + (dst_positive_scale_flatten_rowsrowentry))) + (((dst_negative_code_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)) * S ((dst_negative_code_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)) + ((dst_negative_scale_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)))) * S ((((dst_positive_code_flatten_rowsrowentry) + (dst_positive_scale_flatten_rowsrowentry)) * S ((dst_positive_code_flatten_rowsrowentry) + (dst_positive_scale_flatten_rowsrowentry)) + ((dst_positive_scale_flatten_rowsrowentry) + (dst_positive_scale_flatten_rowsrowentry))) + (((dst_negative_code_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)) * S ((dst_negative_code_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)) + ((dst_negative_scale_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)))) + ((((dst_negative_code_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)) * S ((dst_negative_code_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)) + ((dst_negative_scale_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry))) + (((dst_negative_code_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)) * S ((dst_negative_code_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)) + ((dst_negative_scale_flatten_rowsrowentry) + (dst_negative_scale_flatten_rowsrowentry)))))) /\ (((((exists ff_h_pvs_flatten_rowsrowentrypositive. ff_h_pvs_flatten_rowsrowentrypositive + S (dst_positive_flatten_rowsrowentry) = S ((S (srt_index_flatten_rows)) * dst_positive_scale_flatten_rowsrowentry)) /\ exists ff_q_pvs_flatten_rowsrowentrypositive. dst_positive_code_flatten_rowsrowentry = ff_q_pvs_flatten_rowsrowentrypositive * S ((S (srt_index_flatten_rows)) * dst_positive_scale_flatten_rowsrowentry) + (dst_positive_flatten_rowsrowentry))) /\ (((((exists ff_h_pvs_flatten_rowsrowentrynegative. ff_h_pvs_flatten_rowsrowentrynegative + S (dst_negative_flatten_rowsrowentry) = S ((S (srt_index_flatten_rows)) * dst_negative_scale_flatten_rowsrowentry)) /\ exists ff_q_pvs_flatten_rowsrowentrynegative. dst_negative_code_flatten_rowsrowentry = ff_q_pvs_flatten_rowsrowentrynegative * S ((S (srt_index_flatten_rows)) * dst_negative_scale_flatten_rowsrowentry) + (dst_negative_flatten_rowsrowentry))) /\ (exists ge_balance_positive_flatten_rowsrowentryvalue ge_balance_negative_flatten_rowsrowentryvalue. (((((srt_value_flatten_rows) = 2 * (ge_balance_positive_flatten_rowsrowentryvalue) /\ (ge_balance_negative_flatten_rowsrowentryvalue) = 0) \/ exists ge_signed_half_flatten_rowsrowentryvaluedecode. (((srt_value_flatten_rows) = 2 * ge_signed_half_flatten_rowsrowentryvaluedecode + 1 /\ (ge_balance_positive_flatten_rowsrowentryvalue) = 0) /\ (ge_balance_negative_flatten_rowsrowentryvalue) = S ge_signed_half_flatten_rowsrowentryvaluedecode))) /\ ((dst_positive_flatten_rowsrowentry) + ge_balance_negative_flatten_rowsrowentryvalue = (dst_negative_flatten_rowsrowentry) + ge_balance_positive_flatten_rowsrowentryvalue))))))))) /\ (exists srs_slice_flatten_rowsrowrow_sum. ((((exists dst_positive_code_flatten_rowsrowrow_sumslicesource_table dst_positive_scale_flatten_rowsrowrow_sumslicesource_table dst_negative_code_flatten_rowsrowrow_sumslicesource_table dst_negative_scale_flatten_rowsrowrow_sumslicesource_table. (((F) = (((((dst_positive_code_flatten_rowsrowrow_sumslicesource_table) + (dst_positive_scale_flatten_rowsrowrow_sumslicesource_table)) * S ((dst_positive_code_flatten_rowsrowrow_sumslicesource_table) + (dst_positive_scale_flatten_rowsrowrow_sumslicesource_table)) + ((dst_positive_scale_flatten_rowsrowrow_sumslicesource_table) + (dst_positive_scale_flatten_rowsrowrow_sumslicesource_table))) + (((dst_negative_code_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) * S ((dst_negative_code_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) + ((dst_negative_scale_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)))) * S ((((dst_positive_code_flatten_rowsrowrow_sumslicesource_table) + (dst_positive_scale_flatten_rowsrowrow_sumslicesource_table)) * S ((dst_positive_code_flatten_rowsrowrow_sumslicesource_table) + (dst_positive_scale_flatten_rowsrowrow_sumslicesource_table)) + ((dst_positive_scale_flatten_rowsrowrow_sumslicesource_table) + (dst_positive_scale_flatten_rowsrowrow_sumslicesource_table))) + (((dst_negative_code_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) * S ((dst_negative_code_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) + ((dst_negative_scale_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)))) + ((((dst_negative_code_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) * S ((dst_negative_code_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) + ((dst_negative_scale_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table))) + (((dst_negative_code_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) * S ((dst_negative_code_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) + ((dst_negative_scale_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)))))) /\ (forall dst_index_flatten_rowsrowrow_sumslicesource_table. (exists pvs_le_gap_flatten_rowsrowrow_sumslicesource_tabledomain. pvs_le_gap_flatten_rowsrowrow_sumslicesource_tabledomain + (dst_index_flatten_rowsrowrow_sumslicesource_table) = (0)) -> exists dst_positive_flatten_rowsrowrow_sumslicesource_table dst_negative_flatten_rowsrowrow_sumslicesource_table dst_value_flatten_rowsrowrow_sumslicesource_table. ((((exists ff_h_pvs_flatten_rowsrowrow_sumslicesource_tableentrypositive. ff_h_pvs_flatten_rowsrowrow_sumslicesource_tableentrypositive + S (dst_positive_flatten_rowsrowrow_sumslicesource_table) = S ((S (dst_index_flatten_rowsrowrow_sumslicesource_table)) * dst_positive_scale_flatten_rowsrowrow_sumslicesource_table)) /\ exists ff_q_pvs_flatten_rowsrowrow_sumslicesource_tableentrypositive. dst_positive_code_flatten_rowsrowrow_sumslicesource_table = ff_q_pvs_flatten_rowsrowrow_sumslicesource_tableentrypositive * S ((S (dst_index_flatten_rowsrowrow_sumslicesource_table)) * dst_positive_scale_flatten_rowsrowrow_sumslicesource_table) + (dst_positive_flatten_rowsrowrow_sumslicesource_table))) /\ (((((exists ff_h_pvs_flatten_rowsrowrow_sumslicesource_tableentrynegative. ff_h_pvs_flatten_rowsrowrow_sumslicesource_tableentrynegative + S (dst_negative_flatten_rowsrowrow_sumslicesource_table) = S ((S (dst_index_flatten_rowsrowrow_sumslicesource_table)) * dst_negative_scale_flatten_rowsrowrow_sumslicesource_table)) /\ exists ff_q_pvs_flatten_rowsrowrow_sumslicesource_tableentrynegative. dst_negative_code_flatten_rowsrowrow_sumslicesource_table = ff_q_pvs_flatten_rowsrowrow_sumslicesource_tableentrynegative * S ((S (dst_index_flatten_rowsrowrow_sumslicesource_table)) * dst_negative_scale_flatten_rowsrowrow_sumslicesource_table) + (dst_negative_flatten_rowsrowrow_sumslicesource_table))) /\ (exists ge_balance_positive_flatten_rowsrowrow_sumslicesource_tableentryvalue ge_balance_negative_flatten_rowsrowrow_sumslicesource_tableentryvalue. (((((dst_value_flatten_rowsrowrow_sumslicesource_table) = 2 * (ge_balance_positive_flatten_rowsrowrow_sumslicesource_tableentryvalue) /\ (ge_balance_negative_flatten_rowsrowrow_sumslicesource_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_rowsrowrow_sumslicesource_tableentryvaluedecode. (((dst_value_flatten_rowsrowrow_sumslicesource_table) = 2 * ge_signed_half_flatten_rowsrowrow_sumslicesource_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_rowsrowrow_sumslicesource_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_rowsrowrow_sumslicesource_tableentryvalue) = S ge_signed_half_flatten_rowsrowrow_sumslicesource_tableentryvaluedecode))) /\ ((dst_positive_flatten_rowsrowrow_sumslicesource_table) + ge_balance_negative_flatten_rowsrowrow_sumslicesource_tableentryvalue = (dst_negative_flatten_rowsrowrow_sumslicesource_table) + ge_balance_positive_flatten_rowsrowrow_sumslicesource_tableentryvalue))))))))) /\ (((exists dst_positive_code_flatten_rowsrowrow_sumsliceoutput_table dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table. (((srs_slice_flatten_rowsrowrow_sum) = (((((dst_positive_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table)) * S ((dst_positive_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table)) + ((dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table) + (dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)))) * S ((((dst_positive_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table)) * S ((dst_positive_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table)) + ((dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table) + (dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)))) + ((((dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)))))) /\ (forall dst_index_flatten_rowsrowrow_sumsliceoutput_table. (exists pvs_le_gap_flatten_rowsrowrow_sumsliceoutput_tabledomain. pvs_le_gap_flatten_rowsrowrow_sumsliceoutput_tabledomain + (dst_index_flatten_rowsrowrow_sumsliceoutput_table) = (n)) -> exists dst_positive_flatten_rowsrowrow_sumsliceoutput_table dst_negative_flatten_rowsrowrow_sumsliceoutput_table dst_value_flatten_rowsrowrow_sumsliceoutput_table. ((((exists ff_h_pvs_flatten_rowsrowrow_sumsliceoutput_tableentrypositive. ff_h_pvs_flatten_rowsrowrow_sumsliceoutput_tableentrypositive + S (dst_positive_flatten_rowsrowrow_sumsliceoutput_table) = S ((S (dst_index_flatten_rowsrowrow_sumsliceoutput_table)) * dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table)) /\ exists ff_q_pvs_flatten_rowsrowrow_sumsliceoutput_tableentrypositive. dst_positive_code_flatten_rowsrowrow_sumsliceoutput_table = ff_q_pvs_flatten_rowsrowrow_sumsliceoutput_tableentrypositive * S ((S (dst_index_flatten_rowsrowrow_sumsliceoutput_table)) * dst_positive_scale_flatten_rowsrowrow_sumsliceoutput_table) + (dst_positive_flatten_rowsrowrow_sumsliceoutput_table))) /\ (((((exists ff_h_pvs_flatten_rowsrowrow_sumsliceoutput_tableentrynegative. ff_h_pvs_flatten_rowsrowrow_sumsliceoutput_tableentrynegative + S (dst_negative_flatten_rowsrowrow_sumsliceoutput_table) = S ((S (dst_index_flatten_rowsrowrow_sumsliceoutput_table)) * dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table)) /\ exists ff_q_pvs_flatten_rowsrowrow_sumsliceoutput_tableentrynegative. dst_negative_code_flatten_rowsrowrow_sumsliceoutput_table = ff_q_pvs_flatten_rowsrowrow_sumsliceoutput_tableentrynegative * S ((S (dst_index_flatten_rowsrowrow_sumsliceoutput_table)) * dst_negative_scale_flatten_rowsrowrow_sumsliceoutput_table) + (dst_negative_flatten_rowsrowrow_sumsliceoutput_table))) /\ (exists ge_balance_positive_flatten_rowsrowrow_sumsliceoutput_tableentryvalue ge_balance_negative_flatten_rowsrowrow_sumsliceoutput_tableentryvalue. (((((dst_value_flatten_rowsrowrow_sumsliceoutput_table) = 2 * (ge_balance_positive_flatten_rowsrowrow_sumsliceoutput_tableentryvalue) /\ (ge_balance_negative_flatten_rowsrowrow_sumsliceoutput_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_rowsrowrow_sumsliceoutput_tableentryvaluedecode. (((dst_value_flatten_rowsrowrow_sumsliceoutput_table) = 2 * ge_signed_half_flatten_rowsrowrow_sumsliceoutput_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_rowsrowrow_sumsliceoutput_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_rowsrowrow_sumsliceoutput_tableentryvalue) = S ge_signed_half_flatten_rowsrowrow_sumsliceoutput_tableentryvaluedecode))) /\ ((dst_positive_flatten_rowsrowrow_sumsliceoutput_table) + ge_balance_negative_flatten_rowsrowrow_sumsliceoutput_tableentryvalue = (dst_negative_flatten_rowsrowrow_sumsliceoutput_table) + ge_balance_positive_flatten_rowsrowrow_sumsliceoutput_tableentryvalue))))))))) /\ (forall srs_index_flatten_rowsrowrow_sumslice. (exists pvs_gap_flatten_rowsrowrow_sumslicebound. pvs_gap_flatten_rowsrowrow_sumslicebound + S (srs_index_flatten_rowsrowrow_sumslice) = (n)) -> exists srs_value_flatten_rowsrowrow_sumslice. (((exists dst_positive_code_flatten_rowsrowrow_sumsliceentrysource dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource dst_negative_code_flatten_rowsrowrow_sumsliceentrysource dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource dst_positive_flatten_rowsrowrow_sumsliceentrysource dst_negative_flatten_rowsrowrow_sumsliceentrysource. (((F) = (((((dst_positive_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource)) * S ((dst_positive_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource)) + ((dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)))) * S ((((dst_positive_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource)) * S ((dst_positive_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource)) + ((dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)))) + ((((dst_negative_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)))))) /\ (((((exists ff_h_pvs_flatten_rowsrowrow_sumsliceentrysourcepositive. ff_h_pvs_flatten_rowsrowrow_sumsliceentrysourcepositive + S (dst_positive_flatten_rowsrowrow_sumsliceentrysource) = S ((S (((((0) + ((n) * (srt_index_flatten_rows)))) + ((1) * (srs_index_flatten_rowsrowrow_sumslice))))) * dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource)) /\ exists ff_q_pvs_flatten_rowsrowrow_sumsliceentrysourcepositive. dst_positive_code_flatten_rowsrowrow_sumsliceentrysource = ff_q_pvs_flatten_rowsrowrow_sumsliceentrysourcepositive * S ((S (((((0) + ((n) * (srt_index_flatten_rows)))) + ((1) * (srs_index_flatten_rowsrowrow_sumslice))))) * dst_positive_scale_flatten_rowsrowrow_sumsliceentrysource) + (dst_positive_flatten_rowsrowrow_sumsliceentrysource))) /\ (((((exists ff_h_pvs_flatten_rowsrowrow_sumsliceentrysourcenegative. ff_h_pvs_flatten_rowsrowrow_sumsliceentrysourcenegative + S (dst_negative_flatten_rowsrowrow_sumsliceentrysource) = S ((S (((((0) + ((n) * (srt_index_flatten_rows)))) + ((1) * (srs_index_flatten_rowsrowrow_sumslice))))) * dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource)) /\ exists ff_q_pvs_flatten_rowsrowrow_sumsliceentrysourcenegative. dst_negative_code_flatten_rowsrowrow_sumsliceentrysource = ff_q_pvs_flatten_rowsrowrow_sumsliceentrysourcenegative * S ((S (((((0) + ((n) * (srt_index_flatten_rows)))) + ((1) * (srs_index_flatten_rowsrowrow_sumslice))))) * dst_negative_scale_flatten_rowsrowrow_sumsliceentrysource) + (dst_negative_flatten_rowsrowrow_sumsliceentrysource))) /\ (exists ge_balance_positive_flatten_rowsrowrow_sumsliceentrysourcevalue ge_balance_negative_flatten_rowsrowrow_sumsliceentrysourcevalue. (((((srs_value_flatten_rowsrowrow_sumslice) = 2 * (ge_balance_positive_flatten_rowsrowrow_sumsliceentrysourcevalue) /\ (ge_balance_negative_flatten_rowsrowrow_sumsliceentrysourcevalue) = 0) \/ exists ge_signed_half_flatten_rowsrowrow_sumsliceentrysourcevaluedecode. (((srs_value_flatten_rowsrowrow_sumslice) = 2 * ge_signed_half_flatten_rowsrowrow_sumsliceentrysourcevaluedecode + 1 /\ (ge_balance_positive_flatten_rowsrowrow_sumsliceentrysourcevalue) = 0) /\ (ge_balance_negative_flatten_rowsrowrow_sumsliceentrysourcevalue) = S ge_signed_half_flatten_rowsrowrow_sumsliceentrysourcevaluedecode))) /\ ((dst_positive_flatten_rowsrowrow_sumsliceentrysource) + ge_balance_negative_flatten_rowsrowrow_sumsliceentrysourcevalue = (dst_negative_flatten_rowsrowrow_sumsliceentrysource) + ge_balance_positive_flatten_rowsrowrow_sumsliceentrysourcevalue))))))))) /\ (exists dst_positive_code_flatten_rowsrowrow_sumsliceentryoutput dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput dst_positive_flatten_rowsrowrow_sumsliceentryoutput dst_negative_flatten_rowsrowrow_sumsliceentryoutput. (((srs_slice_flatten_rowsrowrow_sum) = (((((dst_positive_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput)) * S ((dst_positive_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput)) + ((dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)))) * S ((((dst_positive_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput)) * S ((dst_positive_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput)) + ((dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput) + (dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)))) + ((((dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput))) + (((dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) * S ((dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) + ((dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)))))) /\ (((((exists ff_h_pvs_flatten_rowsrowrow_sumsliceentryoutputpositive. ff_h_pvs_flatten_rowsrowrow_sumsliceentryoutputpositive + S (dst_positive_flatten_rowsrowrow_sumsliceentryoutput) = S ((S (srs_index_flatten_rowsrowrow_sumslice)) * dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput)) /\ exists ff_q_pvs_flatten_rowsrowrow_sumsliceentryoutputpositive. dst_positive_code_flatten_rowsrowrow_sumsliceentryoutput = ff_q_pvs_flatten_rowsrowrow_sumsliceentryoutputpositive * S ((S (srs_index_flatten_rowsrowrow_sumslice)) * dst_positive_scale_flatten_rowsrowrow_sumsliceentryoutput) + (dst_positive_flatten_rowsrowrow_sumsliceentryoutput))) /\ (((((exists ff_h_pvs_flatten_rowsrowrow_sumsliceentryoutputnegative. ff_h_pvs_flatten_rowsrowrow_sumsliceentryoutputnegative + S (dst_negative_flatten_rowsrowrow_sumsliceentryoutput) = S ((S (srs_index_flatten_rowsrowrow_sumslice)) * dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput)) /\ exists ff_q_pvs_flatten_rowsrowrow_sumsliceentryoutputnegative. dst_negative_code_flatten_rowsrowrow_sumsliceentryoutput = ff_q_pvs_flatten_rowsrowrow_sumsliceentryoutputnegative * S ((S (srs_index_flatten_rowsrowrow_sumslice)) * dst_negative_scale_flatten_rowsrowrow_sumsliceentryoutput) + (dst_negative_flatten_rowsrowrow_sumsliceentryoutput))) /\ (exists ge_balance_positive_flatten_rowsrowrow_sumsliceentryoutputvalue ge_balance_negative_flatten_rowsrowrow_sumsliceentryoutputvalue. (((((srs_value_flatten_rowsrowrow_sumslice) = 2 * (ge_balance_positive_flatten_rowsrowrow_sumsliceentryoutputvalue) /\ (ge_balance_negative_flatten_rowsrowrow_sumsliceentryoutputvalue) = 0) \/ exists ge_signed_half_flatten_rowsrowrow_sumsliceentryoutputvaluedecode. (((srs_value_flatten_rowsrowrow_sumslice) = 2 * ge_signed_half_flatten_rowsrowrow_sumsliceentryoutputvaluedecode + 1 /\ (ge_balance_positive_flatten_rowsrowrow_sumsliceentryoutputvalue) = 0) /\ (ge_balance_negative_flatten_rowsrowrow_sumsliceentryoutputvalue) = S ge_signed_half_flatten_rowsrowrow_sumsliceentryoutputvaluedecode))) /\ ((dst_positive_flatten_rowsrowrow_sumsliceentryoutput) + ge_balance_negative_flatten_rowsrowrow_sumsliceentryoutputvalue = (dst_negative_flatten_rowsrowrow_sumsliceentryoutput) + ge_balance_positive_flatten_rowsrowrow_sumsliceentryoutputvalue)))))))))))))))) /\ (exists dst_positive_code_flatten_rowsrowrow_sumsum dst_positive_scale_flatten_rowsrowrow_sumsum dst_negative_code_flatten_rowsrowrow_sumsum dst_negative_scale_flatten_rowsrowrow_sumsum dst_positive_sum_flatten_rowsrowrow_sumsum dst_negative_sum_flatten_rowsrowrow_sumsum. (((srs_slice_flatten_rowsrowrow_sum) = (((((dst_positive_code_flatten_rowsrowrow_sumsum) + (dst_positive_scale_flatten_rowsrowrow_sumsum)) * S ((dst_positive_code_flatten_rowsrowrow_sumsum) + (dst_positive_scale_flatten_rowsrowrow_sumsum)) + ((dst_positive_scale_flatten_rowsrowrow_sumsum) + (dst_positive_scale_flatten_rowsrowrow_sumsum))) + (((dst_negative_code_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)) * S ((dst_negative_code_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)) + ((dst_negative_scale_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)))) * S ((((dst_positive_code_flatten_rowsrowrow_sumsum) + (dst_positive_scale_flatten_rowsrowrow_sumsum)) * S ((dst_positive_code_flatten_rowsrowrow_sumsum) + (dst_positive_scale_flatten_rowsrowrow_sumsum)) + ((dst_positive_scale_flatten_rowsrowrow_sumsum) + (dst_positive_scale_flatten_rowsrowrow_sumsum))) + (((dst_negative_code_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)) * S ((dst_negative_code_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)) + ((dst_negative_scale_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)))) + ((((dst_negative_code_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)) * S ((dst_negative_code_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)) + ((dst_negative_scale_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum))) + (((dst_negative_code_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)) * S ((dst_negative_code_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)) + ((dst_negative_scale_flatten_rowsrowrow_sumsum) + (dst_negative_scale_flatten_rowsrowrow_sumsum)))))) /\ (((exists fs_u_dst_flatten_rowsrowrow_sumsumpositive fs_v_dst_flatten_rowsrowrow_sumsumpositive. ((((exists fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_start. fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_rowsrowrow_sumsumpositive)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_start. fs_u_dst_flatten_rowsrowrow_sumsumpositive = fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_start * S ((S (0)) * fs_v_dst_flatten_rowsrowrow_sumsumpositive) + (0))) /\ ((((exists fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_terminal. fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_terminal + S (dst_positive_sum_flatten_rowsrowrow_sumsum) = S ((S (n)) * fs_v_dst_flatten_rowsrowrow_sumsumpositive)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_terminal. fs_u_dst_flatten_rowsrowrow_sumsumpositive = fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_terminal * S ((S (n)) * fs_v_dst_flatten_rowsrowrow_sumsumpositive) + (dst_positive_sum_flatten_rowsrowrow_sumsum))) /\ forall fs_i_dst_flatten_rowsrowrow_sumsumpositive_body_steps. (exists fs_lt_dst_flatten_rowsrowrow_sumsumpositive_body_steps_bound. fs_lt_dst_flatten_rowsrowrow_sumsumpositive_body_steps_bound + S fs_i_dst_flatten_rowsrowrow_sumsumpositive_body_steps = n) -> exists fs_a_dst_flatten_rowsrowrow_sumsumpositive_body_steps fs_r_dst_flatten_rowsrowrow_sumsumpositive_body_steps fs_s_dst_flatten_rowsrowrow_sumsumpositive_body_steps. ((((exists fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_steps_summand. fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_steps_summand + S (fs_a_dst_flatten_rowsrowrow_sumsumpositive_body_steps) = S ((S (fs_i_dst_flatten_rowsrowrow_sumsumpositive_body_steps)) * dst_positive_scale_flatten_rowsrowrow_sumsum)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_steps_summand. dst_positive_code_flatten_rowsrowrow_sumsum = fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_steps_summand * S ((S (fs_i_dst_flatten_rowsrowrow_sumsumpositive_body_steps)) * dst_positive_scale_flatten_rowsrowrow_sumsum) + (fs_a_dst_flatten_rowsrowrow_sumsumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_steps_partial. fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_steps_partial + S (fs_r_dst_flatten_rowsrowrow_sumsumpositive_body_steps) = S ((S (fs_i_dst_flatten_rowsrowrow_sumsumpositive_body_steps)) * fs_v_dst_flatten_rowsrowrow_sumsumpositive)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_steps_partial. fs_u_dst_flatten_rowsrowrow_sumsumpositive = fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_steps_partial * S ((S (fs_i_dst_flatten_rowsrowrow_sumsumpositive_body_steps)) * fs_v_dst_flatten_rowsrowrow_sumsumpositive) + (fs_r_dst_flatten_rowsrowrow_sumsumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_steps_successor. fs_h_dst_flatten_rowsrowrow_sumsumpositive_body_steps_successor + S (fs_s_dst_flatten_rowsrowrow_sumsumpositive_body_steps) = S ((S (S fs_i_dst_flatten_rowsrowrow_sumsumpositive_body_steps)) * fs_v_dst_flatten_rowsrowrow_sumsumpositive)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_steps_successor. fs_u_dst_flatten_rowsrowrow_sumsumpositive = fs_q_dst_flatten_rowsrowrow_sumsumpositive_body_steps_successor * S ((S (S fs_i_dst_flatten_rowsrowrow_sumsumpositive_body_steps)) * fs_v_dst_flatten_rowsrowrow_sumsumpositive) + (fs_s_dst_flatten_rowsrowrow_sumsumpositive_body_steps))) /\ fs_s_dst_flatten_rowsrowrow_sumsumpositive_body_steps = fs_r_dst_flatten_rowsrowrow_sumsumpositive_body_steps + fs_a_dst_flatten_rowsrowrow_sumsumpositive_body_steps)))))) /\ (((exists fs_u_dst_flatten_rowsrowrow_sumsumnegative fs_v_dst_flatten_rowsrowrow_sumsumnegative. ((((exists fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_start. fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_rowsrowrow_sumsumnegative)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_start. fs_u_dst_flatten_rowsrowrow_sumsumnegative = fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_start * S ((S (0)) * fs_v_dst_flatten_rowsrowrow_sumsumnegative) + (0))) /\ ((((exists fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_terminal. fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_terminal + S (dst_negative_sum_flatten_rowsrowrow_sumsum) = S ((S (n)) * fs_v_dst_flatten_rowsrowrow_sumsumnegative)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_terminal. fs_u_dst_flatten_rowsrowrow_sumsumnegative = fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_terminal * S ((S (n)) * fs_v_dst_flatten_rowsrowrow_sumsumnegative) + (dst_negative_sum_flatten_rowsrowrow_sumsum))) /\ forall fs_i_dst_flatten_rowsrowrow_sumsumnegative_body_steps. (exists fs_lt_dst_flatten_rowsrowrow_sumsumnegative_body_steps_bound. fs_lt_dst_flatten_rowsrowrow_sumsumnegative_body_steps_bound + S fs_i_dst_flatten_rowsrowrow_sumsumnegative_body_steps = n) -> exists fs_a_dst_flatten_rowsrowrow_sumsumnegative_body_steps fs_r_dst_flatten_rowsrowrow_sumsumnegative_body_steps fs_s_dst_flatten_rowsrowrow_sumsumnegative_body_steps. ((((exists fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_steps_summand. fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_steps_summand + S (fs_a_dst_flatten_rowsrowrow_sumsumnegative_body_steps) = S ((S (fs_i_dst_flatten_rowsrowrow_sumsumnegative_body_steps)) * dst_negative_scale_flatten_rowsrowrow_sumsum)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_steps_summand. dst_negative_code_flatten_rowsrowrow_sumsum = fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_steps_summand * S ((S (fs_i_dst_flatten_rowsrowrow_sumsumnegative_body_steps)) * dst_negative_scale_flatten_rowsrowrow_sumsum) + (fs_a_dst_flatten_rowsrowrow_sumsumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_steps_partial. fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_steps_partial + S (fs_r_dst_flatten_rowsrowrow_sumsumnegative_body_steps) = S ((S (fs_i_dst_flatten_rowsrowrow_sumsumnegative_body_steps)) * fs_v_dst_flatten_rowsrowrow_sumsumnegative)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_steps_partial. fs_u_dst_flatten_rowsrowrow_sumsumnegative = fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_steps_partial * S ((S (fs_i_dst_flatten_rowsrowrow_sumsumnegative_body_steps)) * fs_v_dst_flatten_rowsrowrow_sumsumnegative) + (fs_r_dst_flatten_rowsrowrow_sumsumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_steps_successor. fs_h_dst_flatten_rowsrowrow_sumsumnegative_body_steps_successor + S (fs_s_dst_flatten_rowsrowrow_sumsumnegative_body_steps) = S ((S (S fs_i_dst_flatten_rowsrowrow_sumsumnegative_body_steps)) * fs_v_dst_flatten_rowsrowrow_sumsumnegative)) /\ exists fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_steps_successor. fs_u_dst_flatten_rowsrowrow_sumsumnegative = fs_q_dst_flatten_rowsrowrow_sumsumnegative_body_steps_successor * S ((S (S fs_i_dst_flatten_rowsrowrow_sumsumnegative_body_steps)) * fs_v_dst_flatten_rowsrowrow_sumsumnegative) + (fs_s_dst_flatten_rowsrowrow_sumsumnegative_body_steps))) /\ fs_s_dst_flatten_rowsrowrow_sumsumnegative_body_steps = fs_r_dst_flatten_rowsrowrow_sumsumnegative_body_steps + fs_a_dst_flatten_rowsrowrow_sumsumnegative_body_steps)))))) /\ (exists ge_balance_positive_flatten_rowsrowrow_sumsumresult ge_balance_negative_flatten_rowsrowrow_sumsumresult. (((((srt_value_flatten_rows) = 2 * (ge_balance_positive_flatten_rowsrowrow_sumsumresult) /\ (ge_balance_negative_flatten_rowsrowrow_sumsumresult) = 0) \/ exists ge_signed_half_flatten_rowsrowrow_sumsumresultdecode. (((srt_value_flatten_rows) = 2 * ge_signed_half_flatten_rowsrowrow_sumsumresultdecode + 1 /\ (ge_balance_positive_flatten_rowsrowrow_sumsumresult) = 0) /\ (ge_balance_negative_flatten_rowsrowrow_sumsumresult) = S ge_signed_half_flatten_rowsrowrow_sumsumresultdecode))) /\ ((dst_positive_sum_flatten_rowsrowrow_sumsum) + ge_balance_negative_flatten_rowsrowrow_sumsumresult = (dst_negative_sum_flatten_rowsrowrow_sumsum) + ge_balance_positive_flatten_rowsrowrow_sumsumresult)))))))))))))))))) -> (exists dst_positive_code_flatten_sum dst_positive_scale_flatten_sum dst_negative_code_flatten_sum dst_negative_scale_flatten_sum dst_positive_sum_flatten_sum dst_negative_sum_flatten_sum. (((R) = (((((dst_positive_code_flatten_sum) + (dst_positive_scale_flatten_sum)) * S ((dst_positive_code_flatten_sum) + (dst_positive_scale_flatten_sum)) + ((dst_positive_scale_flatten_sum) + (dst_positive_scale_flatten_sum))) + (((dst_negative_code_flatten_sum) + (dst_negative_scale_flatten_sum)) * S ((dst_negative_code_flatten_sum) + (dst_negative_scale_flatten_sum)) + ((dst_negative_scale_flatten_sum) + (dst_negative_scale_flatten_sum)))) * S ((((dst_positive_code_flatten_sum) + (dst_positive_scale_flatten_sum)) * S ((dst_positive_code_flatten_sum) + (dst_positive_scale_flatten_sum)) + ((dst_positive_scale_flatten_sum) + (dst_positive_scale_flatten_sum))) + (((dst_negative_code_flatten_sum) + (dst_negative_scale_flatten_sum)) * S ((dst_negative_code_flatten_sum) + (dst_negative_scale_flatten_sum)) + ((dst_negative_scale_flatten_sum) + (dst_negative_scale_flatten_sum)))) + ((((dst_negative_code_flatten_sum) + (dst_negative_scale_flatten_sum)) * S ((dst_negative_code_flatten_sum) + (dst_negative_scale_flatten_sum)) + ((dst_negative_scale_flatten_sum) + (dst_negative_scale_flatten_sum))) + (((dst_negative_code_flatten_sum) + (dst_negative_scale_flatten_sum)) * S ((dst_negative_code_flatten_sum) + (dst_negative_scale_flatten_sum)) + ((dst_negative_scale_flatten_sum) + (dst_negative_scale_flatten_sum)))))) /\ (((exists fs_u_dst_flatten_sumpositive fs_v_dst_flatten_sumpositive. ((((exists fs_h_dst_flatten_sumpositive_body_start. fs_h_dst_flatten_sumpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_sumpositive)) /\ exists fs_q_dst_flatten_sumpositive_body_start. fs_u_dst_flatten_sumpositive = fs_q_dst_flatten_sumpositive_body_start * S ((S (0)) * fs_v_dst_flatten_sumpositive) + (0))) /\ ((((exists fs_h_dst_flatten_sumpositive_body_terminal. fs_h_dst_flatten_sumpositive_body_terminal + S (dst_positive_sum_flatten_sum) = S ((S (m)) * fs_v_dst_flatten_sumpositive)) /\ exists fs_q_dst_flatten_sumpositive_body_terminal. fs_u_dst_flatten_sumpositive = fs_q_dst_flatten_sumpositive_body_terminal * S ((S (m)) * fs_v_dst_flatten_sumpositive) + (dst_positive_sum_flatten_sum))) /\ forall fs_i_dst_flatten_sumpositive_body_steps. (exists fs_lt_dst_flatten_sumpositive_body_steps_bound. fs_lt_dst_flatten_sumpositive_body_steps_bound + S fs_i_dst_flatten_sumpositive_body_steps = m) -> exists fs_a_dst_flatten_sumpositive_body_steps fs_r_dst_flatten_sumpositive_body_steps fs_s_dst_flatten_sumpositive_body_steps. ((((exists fs_h_dst_flatten_sumpositive_body_steps_summand. fs_h_dst_flatten_sumpositive_body_steps_summand + S (fs_a_dst_flatten_sumpositive_body_steps) = S ((S (fs_i_dst_flatten_sumpositive_body_steps)) * dst_positive_scale_flatten_sum)) /\ exists fs_q_dst_flatten_sumpositive_body_steps_summand. dst_positive_code_flatten_sum = fs_q_dst_flatten_sumpositive_body_steps_summand * S ((S (fs_i_dst_flatten_sumpositive_body_steps)) * dst_positive_scale_flatten_sum) + (fs_a_dst_flatten_sumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_sumpositive_body_steps_partial. fs_h_dst_flatten_sumpositive_body_steps_partial + S (fs_r_dst_flatten_sumpositive_body_steps) = S ((S (fs_i_dst_flatten_sumpositive_body_steps)) * fs_v_dst_flatten_sumpositive)) /\ exists fs_q_dst_flatten_sumpositive_body_steps_partial. fs_u_dst_flatten_sumpositive = fs_q_dst_flatten_sumpositive_body_steps_partial * S ((S (fs_i_dst_flatten_sumpositive_body_steps)) * fs_v_dst_flatten_sumpositive) + (fs_r_dst_flatten_sumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_sumpositive_body_steps_successor. fs_h_dst_flatten_sumpositive_body_steps_successor + S (fs_s_dst_flatten_sumpositive_body_steps) = S ((S (S fs_i_dst_flatten_sumpositive_body_steps)) * fs_v_dst_flatten_sumpositive)) /\ exists fs_q_dst_flatten_sumpositive_body_steps_successor. fs_u_dst_flatten_sumpositive = fs_q_dst_flatten_sumpositive_body_steps_successor * S ((S (S fs_i_dst_flatten_sumpositive_body_steps)) * fs_v_dst_flatten_sumpositive) + (fs_s_dst_flatten_sumpositive_body_steps))) /\ fs_s_dst_flatten_sumpositive_body_steps = fs_r_dst_flatten_sumpositive_body_steps + fs_a_dst_flatten_sumpositive_body_steps)))))) /\ (((exists fs_u_dst_flatten_sumnegative fs_v_dst_flatten_sumnegative. ((((exists fs_h_dst_flatten_sumnegative_body_start. fs_h_dst_flatten_sumnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_sumnegative)) /\ exists fs_q_dst_flatten_sumnegative_body_start. fs_u_dst_flatten_sumnegative = fs_q_dst_flatten_sumnegative_body_start * S ((S (0)) * fs_v_dst_flatten_sumnegative) + (0))) /\ ((((exists fs_h_dst_flatten_sumnegative_body_terminal. fs_h_dst_flatten_sumnegative_body_terminal + S (dst_negative_sum_flatten_sum) = S ((S (m)) * fs_v_dst_flatten_sumnegative)) /\ exists fs_q_dst_flatten_sumnegative_body_terminal. fs_u_dst_flatten_sumnegative = fs_q_dst_flatten_sumnegative_body_terminal * S ((S (m)) * fs_v_dst_flatten_sumnegative) + (dst_negative_sum_flatten_sum))) /\ forall fs_i_dst_flatten_sumnegative_body_steps. (exists fs_lt_dst_flatten_sumnegative_body_steps_bound. fs_lt_dst_flatten_sumnegative_body_steps_bound + S fs_i_dst_flatten_sumnegative_body_steps = m) -> exists fs_a_dst_flatten_sumnegative_body_steps fs_r_dst_flatten_sumnegative_body_steps fs_s_dst_flatten_sumnegative_body_steps. ((((exists fs_h_dst_flatten_sumnegative_body_steps_summand. fs_h_dst_flatten_sumnegative_body_steps_summand + S (fs_a_dst_flatten_sumnegative_body_steps) = S ((S (fs_i_dst_flatten_sumnegative_body_steps)) * dst_negative_scale_flatten_sum)) /\ exists fs_q_dst_flatten_sumnegative_body_steps_summand. dst_negative_code_flatten_sum = fs_q_dst_flatten_sumnegative_body_steps_summand * S ((S (fs_i_dst_flatten_sumnegative_body_steps)) * dst_negative_scale_flatten_sum) + (fs_a_dst_flatten_sumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_sumnegative_body_steps_partial. fs_h_dst_flatten_sumnegative_body_steps_partial + S (fs_r_dst_flatten_sumnegative_body_steps) = S ((S (fs_i_dst_flatten_sumnegative_body_steps)) * fs_v_dst_flatten_sumnegative)) /\ exists fs_q_dst_flatten_sumnegative_body_steps_partial. fs_u_dst_flatten_sumnegative = fs_q_dst_flatten_sumnegative_body_steps_partial * S ((S (fs_i_dst_flatten_sumnegative_body_steps)) * fs_v_dst_flatten_sumnegative) + (fs_r_dst_flatten_sumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_sumnegative_body_steps_successor. fs_h_dst_flatten_sumnegative_body_steps_successor + S (fs_s_dst_flatten_sumnegative_body_steps) = S ((S (S fs_i_dst_flatten_sumnegative_body_steps)) * fs_v_dst_flatten_sumnegative)) /\ exists fs_q_dst_flatten_sumnegative_body_steps_successor. fs_u_dst_flatten_sumnegative = fs_q_dst_flatten_sumnegative_body_steps_successor * S ((S (S fs_i_dst_flatten_sumnegative_body_steps)) * fs_v_dst_flatten_sumnegative) + (fs_s_dst_flatten_sumnegative_body_steps))) /\ fs_s_dst_flatten_sumnegative_body_steps = fs_r_dst_flatten_sumnegative_body_steps + fs_a_dst_flatten_sumnegative_body_steps)))))) /\ (exists ge_balance_positive_flatten_sumresult ge_balance_negative_flatten_sumresult. (((((z) = 2 * (ge_balance_positive_flatten_sumresult) /\ (ge_balance_negative_flatten_sumresult) = 0) \/ exists ge_signed_half_flatten_sumresultdecode. (((z) = 2 * ge_signed_half_flatten_sumresultdecode + 1 /\ (ge_balance_positive_flatten_sumresult) = 0) /\ (ge_balance_negative_flatten_sumresult) = S ge_signed_half_flatten_sumresultdecode))) /\ ((dst_positive_sum_flatten_sum) + ge_balance_negative_flatten_sumresult = (dst_negative_sum_flatten_sum) + ge_balance_positive_flatten_sumresult))))))))) -> (exists srs_slice_flatten_result. ((((exists dst_positive_code_flatten_resultslicesource_table dst_positive_scale_flatten_resultslicesource_table dst_negative_code_flatten_resultslicesource_table dst_negative_scale_flatten_resultslicesource_table. (((F) = (((((dst_positive_code_flatten_resultslicesource_table) + (dst_positive_scale_flatten_resultslicesource_table)) * S ((dst_positive_code_flatten_resultslicesource_table) + (dst_positive_scale_flatten_resultslicesource_table)) + ((dst_positive_scale_flatten_resultslicesource_table) + (dst_positive_scale_flatten_resultslicesource_table))) + (((dst_negative_code_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)) * S ((dst_negative_code_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)) + ((dst_negative_scale_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)))) * S ((((dst_positive_code_flatten_resultslicesource_table) + (dst_positive_scale_flatten_resultslicesource_table)) * S ((dst_positive_code_flatten_resultslicesource_table) + (dst_positive_scale_flatten_resultslicesource_table)) + ((dst_positive_scale_flatten_resultslicesource_table) + (dst_positive_scale_flatten_resultslicesource_table))) + (((dst_negative_code_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)) * S ((dst_negative_code_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)) + ((dst_negative_scale_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)))) + ((((dst_negative_code_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)) * S ((dst_negative_code_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)) + ((dst_negative_scale_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table))) + (((dst_negative_code_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)) * S ((dst_negative_code_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)) + ((dst_negative_scale_flatten_resultslicesource_table) + (dst_negative_scale_flatten_resultslicesource_table)))))) /\ (forall dst_index_flatten_resultslicesource_table. (exists pvs_le_gap_flatten_resultslicesource_tabledomain. pvs_le_gap_flatten_resultslicesource_tabledomain + (dst_index_flatten_resultslicesource_table) = (0)) -> exists dst_positive_flatten_resultslicesource_table dst_negative_flatten_resultslicesource_table dst_value_flatten_resultslicesource_table. ((((exists ff_h_pvs_flatten_resultslicesource_tableentrypositive. ff_h_pvs_flatten_resultslicesource_tableentrypositive + S (dst_positive_flatten_resultslicesource_table) = S ((S (dst_index_flatten_resultslicesource_table)) * dst_positive_scale_flatten_resultslicesource_table)) /\ exists ff_q_pvs_flatten_resultslicesource_tableentrypositive. dst_positive_code_flatten_resultslicesource_table = ff_q_pvs_flatten_resultslicesource_tableentrypositive * S ((S (dst_index_flatten_resultslicesource_table)) * dst_positive_scale_flatten_resultslicesource_table) + (dst_positive_flatten_resultslicesource_table))) /\ (((((exists ff_h_pvs_flatten_resultslicesource_tableentrynegative. ff_h_pvs_flatten_resultslicesource_tableentrynegative + S (dst_negative_flatten_resultslicesource_table) = S ((S (dst_index_flatten_resultslicesource_table)) * dst_negative_scale_flatten_resultslicesource_table)) /\ exists ff_q_pvs_flatten_resultslicesource_tableentrynegative. dst_negative_code_flatten_resultslicesource_table = ff_q_pvs_flatten_resultslicesource_tableentrynegative * S ((S (dst_index_flatten_resultslicesource_table)) * dst_negative_scale_flatten_resultslicesource_table) + (dst_negative_flatten_resultslicesource_table))) /\ (exists ge_balance_positive_flatten_resultslicesource_tableentryvalue ge_balance_negative_flatten_resultslicesource_tableentryvalue. (((((dst_value_flatten_resultslicesource_table) = 2 * (ge_balance_positive_flatten_resultslicesource_tableentryvalue) /\ (ge_balance_negative_flatten_resultslicesource_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_resultslicesource_tableentryvaluedecode. (((dst_value_flatten_resultslicesource_table) = 2 * ge_signed_half_flatten_resultslicesource_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_resultslicesource_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_resultslicesource_tableentryvalue) = S ge_signed_half_flatten_resultslicesource_tableentryvaluedecode))) /\ ((dst_positive_flatten_resultslicesource_table) + ge_balance_negative_flatten_resultslicesource_tableentryvalue = (dst_negative_flatten_resultslicesource_table) + ge_balance_positive_flatten_resultslicesource_tableentryvalue))))))))) /\ (((exists dst_positive_code_flatten_resultsliceoutput_table dst_positive_scale_flatten_resultsliceoutput_table dst_negative_code_flatten_resultsliceoutput_table dst_negative_scale_flatten_resultsliceoutput_table. (((srs_slice_flatten_result) = (((((dst_positive_code_flatten_resultsliceoutput_table) + (dst_positive_scale_flatten_resultsliceoutput_table)) * S ((dst_positive_code_flatten_resultsliceoutput_table) + (dst_positive_scale_flatten_resultsliceoutput_table)) + ((dst_positive_scale_flatten_resultsliceoutput_table) + (dst_positive_scale_flatten_resultsliceoutput_table))) + (((dst_negative_code_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)) * S ((dst_negative_code_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)) + ((dst_negative_scale_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)))) * S ((((dst_positive_code_flatten_resultsliceoutput_table) + (dst_positive_scale_flatten_resultsliceoutput_table)) * S ((dst_positive_code_flatten_resultsliceoutput_table) + (dst_positive_scale_flatten_resultsliceoutput_table)) + ((dst_positive_scale_flatten_resultsliceoutput_table) + (dst_positive_scale_flatten_resultsliceoutput_table))) + (((dst_negative_code_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)) * S ((dst_negative_code_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)) + ((dst_negative_scale_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)))) + ((((dst_negative_code_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)) * S ((dst_negative_code_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)) + ((dst_negative_scale_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table))) + (((dst_negative_code_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)) * S ((dst_negative_code_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)) + ((dst_negative_scale_flatten_resultsliceoutput_table) + (dst_negative_scale_flatten_resultsliceoutput_table)))))) /\ (forall dst_index_flatten_resultsliceoutput_table. (exists pvs_le_gap_flatten_resultsliceoutput_tabledomain. pvs_le_gap_flatten_resultsliceoutput_tabledomain + (dst_index_flatten_resultsliceoutput_table) = (m*n)) -> exists dst_positive_flatten_resultsliceoutput_table dst_negative_flatten_resultsliceoutput_table dst_value_flatten_resultsliceoutput_table. ((((exists ff_h_pvs_flatten_resultsliceoutput_tableentrypositive. ff_h_pvs_flatten_resultsliceoutput_tableentrypositive + S (dst_positive_flatten_resultsliceoutput_table) = S ((S (dst_index_flatten_resultsliceoutput_table)) * dst_positive_scale_flatten_resultsliceoutput_table)) /\ exists ff_q_pvs_flatten_resultsliceoutput_tableentrypositive. dst_positive_code_flatten_resultsliceoutput_table = ff_q_pvs_flatten_resultsliceoutput_tableentrypositive * S ((S (dst_index_flatten_resultsliceoutput_table)) * dst_positive_scale_flatten_resultsliceoutput_table) + (dst_positive_flatten_resultsliceoutput_table))) /\ (((((exists ff_h_pvs_flatten_resultsliceoutput_tableentrynegative. ff_h_pvs_flatten_resultsliceoutput_tableentrynegative + S (dst_negative_flatten_resultsliceoutput_table) = S ((S (dst_index_flatten_resultsliceoutput_table)) * dst_negative_scale_flatten_resultsliceoutput_table)) /\ exists ff_q_pvs_flatten_resultsliceoutput_tableentrynegative. dst_negative_code_flatten_resultsliceoutput_table = ff_q_pvs_flatten_resultsliceoutput_tableentrynegative * S ((S (dst_index_flatten_resultsliceoutput_table)) * dst_negative_scale_flatten_resultsliceoutput_table) + (dst_negative_flatten_resultsliceoutput_table))) /\ (exists ge_balance_positive_flatten_resultsliceoutput_tableentryvalue ge_balance_negative_flatten_resultsliceoutput_tableentryvalue. (((((dst_value_flatten_resultsliceoutput_table) = 2 * (ge_balance_positive_flatten_resultsliceoutput_tableentryvalue) /\ (ge_balance_negative_flatten_resultsliceoutput_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_resultsliceoutput_tableentryvaluedecode. (((dst_value_flatten_resultsliceoutput_table) = 2 * ge_signed_half_flatten_resultsliceoutput_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_resultsliceoutput_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_resultsliceoutput_tableentryvalue) = S ge_signed_half_flatten_resultsliceoutput_tableentryvaluedecode))) /\ ((dst_positive_flatten_resultsliceoutput_table) + ge_balance_negative_flatten_resultsliceoutput_tableentryvalue = (dst_negative_flatten_resultsliceoutput_table) + ge_balance_positive_flatten_resultsliceoutput_tableentryvalue))))))))) /\ (forall srs_index_flatten_resultslice. (exists pvs_gap_flatten_resultslicebound. pvs_gap_flatten_resultslicebound + S (srs_index_flatten_resultslice) = (m*n)) -> exists srs_value_flatten_resultslice. (((exists dst_positive_code_flatten_resultsliceentrysource dst_positive_scale_flatten_resultsliceentrysource dst_negative_code_flatten_resultsliceentrysource dst_negative_scale_flatten_resultsliceentrysource dst_positive_flatten_resultsliceentrysource dst_negative_flatten_resultsliceentrysource. (((F) = (((((dst_positive_code_flatten_resultsliceentrysource) + (dst_positive_scale_flatten_resultsliceentrysource)) * S ((dst_positive_code_flatten_resultsliceentrysource) + (dst_positive_scale_flatten_resultsliceentrysource)) + ((dst_positive_scale_flatten_resultsliceentrysource) + (dst_positive_scale_flatten_resultsliceentrysource))) + (((dst_negative_code_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)) * S ((dst_negative_code_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)) + ((dst_negative_scale_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)))) * S ((((dst_positive_code_flatten_resultsliceentrysource) + (dst_positive_scale_flatten_resultsliceentrysource)) * S ((dst_positive_code_flatten_resultsliceentrysource) + (dst_positive_scale_flatten_resultsliceentrysource)) + ((dst_positive_scale_flatten_resultsliceentrysource) + (dst_positive_scale_flatten_resultsliceentrysource))) + (((dst_negative_code_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)) * S ((dst_negative_code_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)) + ((dst_negative_scale_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)))) + ((((dst_negative_code_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)) * S ((dst_negative_code_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)) + ((dst_negative_scale_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource))) + (((dst_negative_code_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)) * S ((dst_negative_code_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)) + ((dst_negative_scale_flatten_resultsliceentrysource) + (dst_negative_scale_flatten_resultsliceentrysource)))))) /\ (((((exists ff_h_pvs_flatten_resultsliceentrysourcepositive. ff_h_pvs_flatten_resultsliceentrysourcepositive + S (dst_positive_flatten_resultsliceentrysource) = S ((S (((0) + ((1) * (srs_index_flatten_resultslice))))) * dst_positive_scale_flatten_resultsliceentrysource)) /\ exists ff_q_pvs_flatten_resultsliceentrysourcepositive. dst_positive_code_flatten_resultsliceentrysource = ff_q_pvs_flatten_resultsliceentrysourcepositive * S ((S (((0) + ((1) * (srs_index_flatten_resultslice))))) * dst_positive_scale_flatten_resultsliceentrysource) + (dst_positive_flatten_resultsliceentrysource))) /\ (((((exists ff_h_pvs_flatten_resultsliceentrysourcenegative. ff_h_pvs_flatten_resultsliceentrysourcenegative + S (dst_negative_flatten_resultsliceentrysource) = S ((S (((0) + ((1) * (srs_index_flatten_resultslice))))) * dst_negative_scale_flatten_resultsliceentrysource)) /\ exists ff_q_pvs_flatten_resultsliceentrysourcenegative. dst_negative_code_flatten_resultsliceentrysource = ff_q_pvs_flatten_resultsliceentrysourcenegative * S ((S (((0) + ((1) * (srs_index_flatten_resultslice))))) * dst_negative_scale_flatten_resultsliceentrysource) + (dst_negative_flatten_resultsliceentrysource))) /\ (exists ge_balance_positive_flatten_resultsliceentrysourcevalue ge_balance_negative_flatten_resultsliceentrysourcevalue. (((((srs_value_flatten_resultslice) = 2 * (ge_balance_positive_flatten_resultsliceentrysourcevalue) /\ (ge_balance_negative_flatten_resultsliceentrysourcevalue) = 0) \/ exists ge_signed_half_flatten_resultsliceentrysourcevaluedecode. (((srs_value_flatten_resultslice) = 2 * ge_signed_half_flatten_resultsliceentrysourcevaluedecode + 1 /\ (ge_balance_positive_flatten_resultsliceentrysourcevalue) = 0) /\ (ge_balance_negative_flatten_resultsliceentrysourcevalue) = S ge_signed_half_flatten_resultsliceentrysourcevaluedecode))) /\ ((dst_positive_flatten_resultsliceentrysource) + ge_balance_negative_flatten_resultsliceentrysourcevalue = (dst_negative_flatten_resultsliceentrysource) + ge_balance_positive_flatten_resultsliceentrysourcevalue))))))))) /\ (exists dst_positive_code_flatten_resultsliceentryoutput dst_positive_scale_flatten_resultsliceentryoutput dst_negative_code_flatten_resultsliceentryoutput dst_negative_scale_flatten_resultsliceentryoutput dst_positive_flatten_resultsliceentryoutput dst_negative_flatten_resultsliceentryoutput. (((srs_slice_flatten_result) = (((((dst_positive_code_flatten_resultsliceentryoutput) + (dst_positive_scale_flatten_resultsliceentryoutput)) * S ((dst_positive_code_flatten_resultsliceentryoutput) + (dst_positive_scale_flatten_resultsliceentryoutput)) + ((dst_positive_scale_flatten_resultsliceentryoutput) + (dst_positive_scale_flatten_resultsliceentryoutput))) + (((dst_negative_code_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)) * S ((dst_negative_code_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)) + ((dst_negative_scale_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)))) * S ((((dst_positive_code_flatten_resultsliceentryoutput) + (dst_positive_scale_flatten_resultsliceentryoutput)) * S ((dst_positive_code_flatten_resultsliceentryoutput) + (dst_positive_scale_flatten_resultsliceentryoutput)) + ((dst_positive_scale_flatten_resultsliceentryoutput) + (dst_positive_scale_flatten_resultsliceentryoutput))) + (((dst_negative_code_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)) * S ((dst_negative_code_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)) + ((dst_negative_scale_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)))) + ((((dst_negative_code_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)) * S ((dst_negative_code_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)) + ((dst_negative_scale_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput))) + (((dst_negative_code_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)) * S ((dst_negative_code_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)) + ((dst_negative_scale_flatten_resultsliceentryoutput) + (dst_negative_scale_flatten_resultsliceentryoutput)))))) /\ (((((exists ff_h_pvs_flatten_resultsliceentryoutputpositive. ff_h_pvs_flatten_resultsliceentryoutputpositive + S (dst_positive_flatten_resultsliceentryoutput) = S ((S (srs_index_flatten_resultslice)) * dst_positive_scale_flatten_resultsliceentryoutput)) /\ exists ff_q_pvs_flatten_resultsliceentryoutputpositive. dst_positive_code_flatten_resultsliceentryoutput = ff_q_pvs_flatten_resultsliceentryoutputpositive * S ((S (srs_index_flatten_resultslice)) * dst_positive_scale_flatten_resultsliceentryoutput) + (dst_positive_flatten_resultsliceentryoutput))) /\ (((((exists ff_h_pvs_flatten_resultsliceentryoutputnegative. ff_h_pvs_flatten_resultsliceentryoutputnegative + S (dst_negative_flatten_resultsliceentryoutput) = S ((S (srs_index_flatten_resultslice)) * dst_negative_scale_flatten_resultsliceentryoutput)) /\ exists ff_q_pvs_flatten_resultsliceentryoutputnegative. dst_negative_code_flatten_resultsliceentryoutput = ff_q_pvs_flatten_resultsliceentryoutputnegative * S ((S (srs_index_flatten_resultslice)) * dst_negative_scale_flatten_resultsliceentryoutput) + (dst_negative_flatten_resultsliceentryoutput))) /\ (exists ge_balance_positive_flatten_resultsliceentryoutputvalue ge_balance_negative_flatten_resultsliceentryoutputvalue. (((((srs_value_flatten_resultslice) = 2 * (ge_balance_positive_flatten_resultsliceentryoutputvalue) /\ (ge_balance_negative_flatten_resultsliceentryoutputvalue) = 0) \/ exists ge_signed_half_flatten_resultsliceentryoutputvaluedecode. (((srs_value_flatten_resultslice) = 2 * ge_signed_half_flatten_resultsliceentryoutputvaluedecode + 1 /\ (ge_balance_positive_flatten_resultsliceentryoutputvalue) = 0) /\ (ge_balance_negative_flatten_resultsliceentryoutputvalue) = S ge_signed_half_flatten_resultsliceentryoutputvaluedecode))) /\ ((dst_positive_flatten_resultsliceentryoutput) + ge_balance_negative_flatten_resultsliceentryoutputvalue = (dst_negative_flatten_resultsliceentryoutput) + ge_balance_positive_flatten_resultsliceentryoutputvalue)))))))))))))))) /\ (exists dst_positive_code_flatten_resultsum dst_positive_scale_flatten_resultsum dst_negative_code_flatten_resultsum dst_negative_scale_flatten_resultsum dst_positive_sum_flatten_resultsum dst_negative_sum_flatten_resultsum. (((srs_slice_flatten_result) = (((((dst_positive_code_flatten_resultsum) + (dst_positive_scale_flatten_resultsum)) * S ((dst_positive_code_flatten_resultsum) + (dst_positive_scale_flatten_resultsum)) + ((dst_positive_scale_flatten_resultsum) + (dst_positive_scale_flatten_resultsum))) + (((dst_negative_code_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)) * S ((dst_negative_code_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)) + ((dst_negative_scale_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)))) * S ((((dst_positive_code_flatten_resultsum) + (dst_positive_scale_flatten_resultsum)) * S ((dst_positive_code_flatten_resultsum) + (dst_positive_scale_flatten_resultsum)) + ((dst_positive_scale_flatten_resultsum) + (dst_positive_scale_flatten_resultsum))) + (((dst_negative_code_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)) * S ((dst_negative_code_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)) + ((dst_negative_scale_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)))) + ((((dst_negative_code_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)) * S ((dst_negative_code_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)) + ((dst_negative_scale_flatten_resultsum) + (dst_negative_scale_flatten_resultsum))) + (((dst_negative_code_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)) * S ((dst_negative_code_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)) + ((dst_negative_scale_flatten_resultsum) + (dst_negative_scale_flatten_resultsum)))))) /\ (((exists fs_u_dst_flatten_resultsumpositive fs_v_dst_flatten_resultsumpositive. ((((exists fs_h_dst_flatten_resultsumpositive_body_start. fs_h_dst_flatten_resultsumpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_resultsumpositive)) /\ exists fs_q_dst_flatten_resultsumpositive_body_start. fs_u_dst_flatten_resultsumpositive = fs_q_dst_flatten_resultsumpositive_body_start * S ((S (0)) * fs_v_dst_flatten_resultsumpositive) + (0))) /\ ((((exists fs_h_dst_flatten_resultsumpositive_body_terminal. fs_h_dst_flatten_resultsumpositive_body_terminal + S (dst_positive_sum_flatten_resultsum) = S ((S (m*n)) * fs_v_dst_flatten_resultsumpositive)) /\ exists fs_q_dst_flatten_resultsumpositive_body_terminal. fs_u_dst_flatten_resultsumpositive = fs_q_dst_flatten_resultsumpositive_body_terminal * S ((S (m*n)) * fs_v_dst_flatten_resultsumpositive) + (dst_positive_sum_flatten_resultsum))) /\ forall fs_i_dst_flatten_resultsumpositive_body_steps. (exists fs_lt_dst_flatten_resultsumpositive_body_steps_bound. fs_lt_dst_flatten_resultsumpositive_body_steps_bound + S fs_i_dst_flatten_resultsumpositive_body_steps = m*n) -> exists fs_a_dst_flatten_resultsumpositive_body_steps fs_r_dst_flatten_resultsumpositive_body_steps fs_s_dst_flatten_resultsumpositive_body_steps. ((((exists fs_h_dst_flatten_resultsumpositive_body_steps_summand. fs_h_dst_flatten_resultsumpositive_body_steps_summand + S (fs_a_dst_flatten_resultsumpositive_body_steps) = S ((S (fs_i_dst_flatten_resultsumpositive_body_steps)) * dst_positive_scale_flatten_resultsum)) /\ exists fs_q_dst_flatten_resultsumpositive_body_steps_summand. dst_positive_code_flatten_resultsum = fs_q_dst_flatten_resultsumpositive_body_steps_summand * S ((S (fs_i_dst_flatten_resultsumpositive_body_steps)) * dst_positive_scale_flatten_resultsum) + (fs_a_dst_flatten_resultsumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_resultsumpositive_body_steps_partial. fs_h_dst_flatten_resultsumpositive_body_steps_partial + S (fs_r_dst_flatten_resultsumpositive_body_steps) = S ((S (fs_i_dst_flatten_resultsumpositive_body_steps)) * fs_v_dst_flatten_resultsumpositive)) /\ exists fs_q_dst_flatten_resultsumpositive_body_steps_partial. fs_u_dst_flatten_resultsumpositive = fs_q_dst_flatten_resultsumpositive_body_steps_partial * S ((S (fs_i_dst_flatten_resultsumpositive_body_steps)) * fs_v_dst_flatten_resultsumpositive) + (fs_r_dst_flatten_resultsumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_resultsumpositive_body_steps_successor. fs_h_dst_flatten_resultsumpositive_body_steps_successor + S (fs_s_dst_flatten_resultsumpositive_body_steps) = S ((S (S fs_i_dst_flatten_resultsumpositive_body_steps)) * fs_v_dst_flatten_resultsumpositive)) /\ exists fs_q_dst_flatten_resultsumpositive_body_steps_successor. fs_u_dst_flatten_resultsumpositive = fs_q_dst_flatten_resultsumpositive_body_steps_successor * S ((S (S fs_i_dst_flatten_resultsumpositive_body_steps)) * fs_v_dst_flatten_resultsumpositive) + (fs_s_dst_flatten_resultsumpositive_body_steps))) /\ fs_s_dst_flatten_resultsumpositive_body_steps = fs_r_dst_flatten_resultsumpositive_body_steps + fs_a_dst_flatten_resultsumpositive_body_steps)))))) /\ (((exists fs_u_dst_flatten_resultsumnegative fs_v_dst_flatten_resultsumnegative. ((((exists fs_h_dst_flatten_resultsumnegative_body_start. fs_h_dst_flatten_resultsumnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_resultsumnegative)) /\ exists fs_q_dst_flatten_resultsumnegative_body_start. fs_u_dst_flatten_resultsumnegative = fs_q_dst_flatten_resultsumnegative_body_start * S ((S (0)) * fs_v_dst_flatten_resultsumnegative) + (0))) /\ ((((exists fs_h_dst_flatten_resultsumnegative_body_terminal. fs_h_dst_flatten_resultsumnegative_body_terminal + S (dst_negative_sum_flatten_resultsum) = S ((S (m*n)) * fs_v_dst_flatten_resultsumnegative)) /\ exists fs_q_dst_flatten_resultsumnegative_body_terminal. fs_u_dst_flatten_resultsumnegative = fs_q_dst_flatten_resultsumnegative_body_terminal * S ((S (m*n)) * fs_v_dst_flatten_resultsumnegative) + (dst_negative_sum_flatten_resultsum))) /\ forall fs_i_dst_flatten_resultsumnegative_body_steps. (exists fs_lt_dst_flatten_resultsumnegative_body_steps_bound. fs_lt_dst_flatten_resultsumnegative_body_steps_bound + S fs_i_dst_flatten_resultsumnegative_body_steps = m*n) -> exists fs_a_dst_flatten_resultsumnegative_body_steps fs_r_dst_flatten_resultsumnegative_body_steps fs_s_dst_flatten_resultsumnegative_body_steps. ((((exists fs_h_dst_flatten_resultsumnegative_body_steps_summand. fs_h_dst_flatten_resultsumnegative_body_steps_summand + S (fs_a_dst_flatten_resultsumnegative_body_steps) = S ((S (fs_i_dst_flatten_resultsumnegative_body_steps)) * dst_negative_scale_flatten_resultsum)) /\ exists fs_q_dst_flatten_resultsumnegative_body_steps_summand. dst_negative_code_flatten_resultsum = fs_q_dst_flatten_resultsumnegative_body_steps_summand * S ((S (fs_i_dst_flatten_resultsumnegative_body_steps)) * dst_negative_scale_flatten_resultsum) + (fs_a_dst_flatten_resultsumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_resultsumnegative_body_steps_partial. fs_h_dst_flatten_resultsumnegative_body_steps_partial + S (fs_r_dst_flatten_resultsumnegative_body_steps) = S ((S (fs_i_dst_flatten_resultsumnegative_body_steps)) * fs_v_dst_flatten_resultsumnegative)) /\ exists fs_q_dst_flatten_resultsumnegative_body_steps_partial. fs_u_dst_flatten_resultsumnegative = fs_q_dst_flatten_resultsumnegative_body_steps_partial * S ((S (fs_i_dst_flatten_resultsumnegative_body_steps)) * fs_v_dst_flatten_resultsumnegative) + (fs_r_dst_flatten_resultsumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_resultsumnegative_body_steps_successor. fs_h_dst_flatten_resultsumnegative_body_steps_successor + S (fs_s_dst_flatten_resultsumnegative_body_steps) = S ((S (S fs_i_dst_flatten_resultsumnegative_body_steps)) * fs_v_dst_flatten_resultsumnegative)) /\ exists fs_q_dst_flatten_resultsumnegative_body_steps_successor. fs_u_dst_flatten_resultsumnegative = fs_q_dst_flatten_resultsumnegative_body_steps_successor * S ((S (S fs_i_dst_flatten_resultsumnegative_body_steps)) * fs_v_dst_flatten_resultsumnegative) + (fs_s_dst_flatten_resultsumnegative_body_steps))) /\ fs_s_dst_flatten_resultsumnegative_body_steps = fs_r_dst_flatten_resultsumnegative_body_steps + fs_a_dst_flatten_resultsumnegative_body_steps)))))) /\ (exists ge_balance_positive_flatten_resultsumresult ge_balance_negative_flatten_resultsumresult. (((((z) = 2 * (ge_balance_positive_flatten_resultsumresult) /\ (ge_balance_negative_flatten_resultsumresult) = 0) \/ exists ge_signed_half_flatten_resultsumresultdecode. (((z) = 2 * ge_signed_half_flatten_resultsumresultdecode + 1 /\ (ge_balance_positive_flatten_resultsumresult) = 0) /\ (ge_balance_negative_flatten_resultsumresult) = S ge_signed_half_flatten_resultsumresultdecode))) /\ ((dst_positive_sum_flatten_resultsum) + ge_balance_negative_flatten_resultsumresult = (dst_negative_sum_flatten_resultsum) + ge_balance_positive_flatten_resultsumresult)))))))))))Constructive proof overview
Generated structural guide
Actual row sums concatenate into the genuine flattened source sum by row-count induction, including either zero dimension.
The unchanged tactic script uses 12 declared prerequisites and contains 121 exact native proof lines.
Alpha v34 checked-use · first admitted v32 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
divisor_signed_sum_empty_value Alpha theorem; checked-use authorized mul_zero_left Stable theorem; checked-use authorized signed_rectangular_slice_sum_empty_exists Alpha theorem; checked-use authorized divisor_signed_sum_successor_decompose Alpha theorem; checked-use authorized signed_rectangular_row_sums_restrict_outer Alpha theorem; checked-use authorized signed_rectangular_row_sums_lookup Alpha theorem; checked-use authorized le_refl Stable theorem; checked-use authorized zero_add Stable theorem; checked-use authorized mul_comm Stable theorem; checked-use authorized one_mul Stable theorem; checked-use authorized mul_succ_left Stable theorem; checked-use authorized MX001A signed_slice_sum_concatenateDirect 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)
01Induction on mL1–7
02Separate the logical casesL8–9
03Establish hzL10–16
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed sum empty value.
04Establish hlengthL17–26
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul zero left.
05Calculate and transport equalitiesL27–27
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L27
rewrite hlength
06Use earlier factsL28–32
Instantiate or apply named facts and discharge the corresponding proof obligations.
07Fix variables and assumptionsL33–38
08Establish hdL39–44
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed sum successor decompose.
- L39
have hd : ∃ a. ∃ b. SignedPrefixSum(R,m,a) ∧ (ArithAt(R,m,b) ∧ SignedAdd(a,b,z))Definitions: SignedAddArithAtSignedPrefixSum - L40
specialize divisor_signed_sum_successor_decompose (R) - L41
specialize divisor_signed_sum_successor_decompose (m) - L42
specialize divisor_signed_sum_successor_decompose (z) - L43
apply divisor_signed_sum_successor_decompose - L44
exact hs
09Separate the logical casesL45–48
10Establish hpL49–58
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply IH.
- L49
have hp : SignedSliceSum(F,0,1,m · n,x)Definitions: SignedSliceSum - L50
specialize IH (F) - L51
specialize IH (R) - L52
specialize IH (n) - L53
specialize IH (x) - L54
apply IH - L55
specialize signed_rectangular_row_sums_restrict_outer (F) - L56
specialize signed_rectangular_row_sums_restrict_outer (R) - L57
specialize signed_rectangular_row_sums_restrict_outer (0) - L58
specialize signed_rectangular_row_sums_restrict_outer (n)
11Use earlier factsL59–64
Instantiate or apply named facts and discharge the corresponding proof obligations.
12Establish hlL65–74
Establish this local claim before using it. It is not an additional assumption.
- L65
have hl : SignedSliceSum(F,0 + n · m,1,n,x1)Definitions: SignedSliceSum - L66
specialize signed_rectangular_row_sums_lookup (F) - L67
specialize signed_rectangular_row_sums_lookup (R) - L68
specialize signed_rectangular_row_sums_lookup (0) - L69
specialize signed_rectangular_row_sums_lookup (n) - L70
specialize signed_rectangular_row_sums_lookup (1) - L71
specialize signed_rectangular_row_sums_lookup (S m) - L72
specialize signed_rectangular_row_sums_lookup (n) - L73
specialize signed_rectangular_row_sums_lookup (m) - L74
specialize signed_rectangular_row_sums_lookup (x1)
13Use earlier factsL75–79
14Establish hindexL80–89
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply zero add.
15Use earlier factsL90–93
16Calculate and transport equalitiesL94–97
17Establish hlengthL98–107
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul succ left.
18Calculate and transport equalitiesL108–109
19Use earlier factsL110–119
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L110
specialize signed_slice_sum_concatenate (n) - L111
specialize signed_slice_sum_concatenate (F) - L112
specialize signed_slice_sum_concatenate (0) - L113
specialize signed_slice_sum_concatenate (1) - L114
specialize signed_slice_sum_concatenate (m*n) - L115
specialize signed_slice_sum_concatenate (x) - L116
specialize signed_slice_sum_concatenate (x1) - L117
specialize signed_slice_sum_concatenate (z) - L118
apply signed_slice_sum_concatenate - L119
exact hp
Original exact command ledger · 121 lines
- 0001
induction m - 0002
intro F - 0003
intro R - 0004
intro n - 0005
intro z - 0006
intro hr - 0007
intro hs - 0008
cases hr - 0009
cases hr_right - 0010
have hz : z=0 - 0011
specialize divisor_signed_sum_empty_value (R) - 0012
specialize divisor_signed_sum_empty_value (z) - 0013
apply divisor_signed_sum_empty_value - 0014
exact hs - 0015
rewrite hz - 0016
rewrite hz - 0017
have hlength : 0*n=0 - 0018
specialize mul_zero_left (n) - 0019
apply mul_zero_left - 0020
rewrite hlength - 0021
rewrite hlength - 0022
rewrite hlength - 0023
rewrite hlength - 0024
rewrite hlength - 0025
rewrite hlength - 0026
rewrite hlength - 0027
rewrite hlength - 0028
specialize signed_rectangular_slice_sum_empty_exists (F) - 0029
specialize signed_rectangular_slice_sum_empty_exists (0) - 0030
specialize signed_rectangular_slice_sum_empty_exists (1) - 0031
apply signed_rectangular_slice_sum_empty_exists - 0032
exact hr_left - 0033
intro F - 0034
intro R - 0035
intro n - 0036
intro z - 0037
intro hr - 0038
intro hs - 0039
have hd : exists a b. (((exists dst_positive_code_flatten_prefix_sum dst_positive_scale_flatten_prefix_sum dst_negative_code_flatten_prefix_sum dst_negative_scale_flatten_prefix_sum dst_positive_sum_flatten_prefix_sum dst_negative_sum_flatten_prefix_sum. (((R) = (((((dst_positive_code_flatten_prefix_sum) + (dst_positive_scale_flatten_prefix_sum)) * S ((dst_positive_code_flatten_prefix_sum) + (dst_positive_scale_flatten_prefix_sum)) + ((dst_positive_scale_flatten_prefix_sum) + (dst_positive_scale_flatten_prefix_sum))) + (((dst_negative_code_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)) * S ((dst_negative_code_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)) + ((dst_negative_scale_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)))) * S ((((dst_positive_code_flatten_prefix_sum) + (dst_positive_scale_flatten_prefix_sum)) * S ((dst_positive_code_flatten_prefix_sum) + (dst_positive_scale_flatten_prefix_sum)) + ((dst_positive_scale_flatten_prefix_sum) + (dst_positive_scale_flatten_prefix_sum))) + (((dst_negative_code_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)) * S ((dst_negative_code_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)) + ((dst_negative_scale_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)))) + ((((dst_negative_code_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)) * S ((dst_negative_code_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)) + ((dst_negative_scale_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum))) + (((dst_negative_code_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)) * S ((dst_negative_code_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)) + ((dst_negative_scale_flatten_prefix_sum) + (dst_negative_scale_flatten_prefix_sum)))))) /\ (((exists fs_u_dst_flatten_prefix_sumpositive fs_v_dst_flatten_prefix_sumpositive. ((((exists fs_h_dst_flatten_prefix_sumpositive_body_start. fs_h_dst_flatten_prefix_sumpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_prefix_sumpositive)) /\ exists fs_q_dst_flatten_prefix_sumpositive_body_start. fs_u_dst_flatten_prefix_sumpositive = fs_q_dst_flatten_prefix_sumpositive_body_start * S ((S (0)) * fs_v_dst_flatten_prefix_sumpositive) + (0))) /\ ((((exists fs_h_dst_flatten_prefix_sumpositive_body_terminal. fs_h_dst_flatten_prefix_sumpositive_body_terminal + S (dst_positive_sum_flatten_prefix_sum) = S ((S (m)) * fs_v_dst_flatten_prefix_sumpositive)) /\ exists fs_q_dst_flatten_prefix_sumpositive_body_terminal. fs_u_dst_flatten_prefix_sumpositive = fs_q_dst_flatten_prefix_sumpositive_body_terminal * S ((S (m)) * fs_v_dst_flatten_prefix_sumpositive) + (dst_positive_sum_flatten_prefix_sum))) /\ forall fs_i_dst_flatten_prefix_sumpositive_body_steps. (exists fs_lt_dst_flatten_prefix_sumpositive_body_steps_bound. fs_lt_dst_flatten_prefix_sumpositive_body_steps_bound + S fs_i_dst_flatten_prefix_sumpositive_body_steps = m) -> exists fs_a_dst_flatten_prefix_sumpositive_body_steps fs_r_dst_flatten_prefix_sumpositive_body_steps fs_s_dst_flatten_prefix_sumpositive_body_steps. ((((exists fs_h_dst_flatten_prefix_sumpositive_body_steps_summand. fs_h_dst_flatten_prefix_sumpositive_body_steps_summand + S (fs_a_dst_flatten_prefix_sumpositive_body_steps) = S ((S (fs_i_dst_flatten_prefix_sumpositive_body_steps)) * dst_positive_scale_flatten_prefix_sum)) /\ exists fs_q_dst_flatten_prefix_sumpositive_body_steps_summand. dst_positive_code_flatten_prefix_sum = fs_q_dst_flatten_prefix_sumpositive_body_steps_summand * S ((S (fs_i_dst_flatten_prefix_sumpositive_body_steps)) * dst_positive_scale_flatten_prefix_sum) + (fs_a_dst_flatten_prefix_sumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_prefix_sumpositive_body_steps_partial. fs_h_dst_flatten_prefix_sumpositive_body_steps_partial + S (fs_r_dst_flatten_prefix_sumpositive_body_steps) = S ((S (fs_i_dst_flatten_prefix_sumpositive_body_steps)) * fs_v_dst_flatten_prefix_sumpositive)) /\ exists fs_q_dst_flatten_prefix_sumpositive_body_steps_partial. fs_u_dst_flatten_prefix_sumpositive = fs_q_dst_flatten_prefix_sumpositive_body_steps_partial * S ((S (fs_i_dst_flatten_prefix_sumpositive_body_steps)) * fs_v_dst_flatten_prefix_sumpositive) + (fs_r_dst_flatten_prefix_sumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_prefix_sumpositive_body_steps_successor. fs_h_dst_flatten_prefix_sumpositive_body_steps_successor + S (fs_s_dst_flatten_prefix_sumpositive_body_steps) = S ((S (S fs_i_dst_flatten_prefix_sumpositive_body_steps)) * fs_v_dst_flatten_prefix_sumpositive)) /\ exists fs_q_dst_flatten_prefix_sumpositive_body_steps_successor. fs_u_dst_flatten_prefix_sumpositive = fs_q_dst_flatten_prefix_sumpositive_body_steps_successor * S ((S (S fs_i_dst_flatten_prefix_sumpositive_body_steps)) * fs_v_dst_flatten_prefix_sumpositive) + (fs_s_dst_flatten_prefix_sumpositive_body_steps))) /\ fs_s_dst_flatten_prefix_sumpositive_body_steps = fs_r_dst_flatten_prefix_sumpositive_body_steps + fs_a_dst_flatten_prefix_sumpositive_body_steps)))))) /\ (((exists fs_u_dst_flatten_prefix_sumnegative fs_v_dst_flatten_prefix_sumnegative. ((((exists fs_h_dst_flatten_prefix_sumnegative_body_start. fs_h_dst_flatten_prefix_sumnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_prefix_sumnegative)) /\ exists fs_q_dst_flatten_prefix_sumnegative_body_start. fs_u_dst_flatten_prefix_sumnegative = fs_q_dst_flatten_prefix_sumnegative_body_start * S ((S (0)) * fs_v_dst_flatten_prefix_sumnegative) + (0))) /\ ((((exists fs_h_dst_flatten_prefix_sumnegative_body_terminal. fs_h_dst_flatten_prefix_sumnegative_body_terminal + S (dst_negative_sum_flatten_prefix_sum) = S ((S (m)) * fs_v_dst_flatten_prefix_sumnegative)) /\ exists fs_q_dst_flatten_prefix_sumnegative_body_terminal. fs_u_dst_flatten_prefix_sumnegative = fs_q_dst_flatten_prefix_sumnegative_body_terminal * S ((S (m)) * fs_v_dst_flatten_prefix_sumnegative) + (dst_negative_sum_flatten_prefix_sum))) /\ forall fs_i_dst_flatten_prefix_sumnegative_body_steps. (exists fs_lt_dst_flatten_prefix_sumnegative_body_steps_bound. fs_lt_dst_flatten_prefix_sumnegative_body_steps_bound + S fs_i_dst_flatten_prefix_sumnegative_body_steps = m) -> exists fs_a_dst_flatten_prefix_sumnegative_body_steps fs_r_dst_flatten_prefix_sumnegative_body_steps fs_s_dst_flatten_prefix_sumnegative_body_steps. ((((exists fs_h_dst_flatten_prefix_sumnegative_body_steps_summand. fs_h_dst_flatten_prefix_sumnegative_body_steps_summand + S (fs_a_dst_flatten_prefix_sumnegative_body_steps) = S ((S (fs_i_dst_flatten_prefix_sumnegative_body_steps)) * dst_negative_scale_flatten_prefix_sum)) /\ exists fs_q_dst_flatten_prefix_sumnegative_body_steps_summand. dst_negative_code_flatten_prefix_sum = fs_q_dst_flatten_prefix_sumnegative_body_steps_summand * S ((S (fs_i_dst_flatten_prefix_sumnegative_body_steps)) * dst_negative_scale_flatten_prefix_sum) + (fs_a_dst_flatten_prefix_sumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_prefix_sumnegative_body_steps_partial. fs_h_dst_flatten_prefix_sumnegative_body_steps_partial + S (fs_r_dst_flatten_prefix_sumnegative_body_steps) = S ((S (fs_i_dst_flatten_prefix_sumnegative_body_steps)) * fs_v_dst_flatten_prefix_sumnegative)) /\ exists fs_q_dst_flatten_prefix_sumnegative_body_steps_partial. fs_u_dst_flatten_prefix_sumnegative = fs_q_dst_flatten_prefix_sumnegative_body_steps_partial * S ((S (fs_i_dst_flatten_prefix_sumnegative_body_steps)) * fs_v_dst_flatten_prefix_sumnegative) + (fs_r_dst_flatten_prefix_sumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_prefix_sumnegative_body_steps_successor. fs_h_dst_flatten_prefix_sumnegative_body_steps_successor + S (fs_s_dst_flatten_prefix_sumnegative_body_steps) = S ((S (S fs_i_dst_flatten_prefix_sumnegative_body_steps)) * fs_v_dst_flatten_prefix_sumnegative)) /\ exists fs_q_dst_flatten_prefix_sumnegative_body_steps_successor. fs_u_dst_flatten_prefix_sumnegative = fs_q_dst_flatten_prefix_sumnegative_body_steps_successor * S ((S (S fs_i_dst_flatten_prefix_sumnegative_body_steps)) * fs_v_dst_flatten_prefix_sumnegative) + (fs_s_dst_flatten_prefix_sumnegative_body_steps))) /\ fs_s_dst_flatten_prefix_sumnegative_body_steps = fs_r_dst_flatten_prefix_sumnegative_body_steps + fs_a_dst_flatten_prefix_sumnegative_body_steps)))))) /\ (exists ge_balance_positive_flatten_prefix_sumresult ge_balance_negative_flatten_prefix_sumresult. (((((a) = 2 * (ge_balance_positive_flatten_prefix_sumresult) /\ (ge_balance_negative_flatten_prefix_sumresult) = 0) \/ exists ge_signed_half_flatten_prefix_sumresultdecode. (((a) = 2 * ge_signed_half_flatten_prefix_sumresultdecode + 1 /\ (ge_balance_positive_flatten_prefix_sumresult) = 0) /\ (ge_balance_negative_flatten_prefix_sumresult) = S ge_signed_half_flatten_prefix_sumresultdecode))) /\ ((dst_positive_sum_flatten_prefix_sum) + ge_balance_negative_flatten_prefix_sumresult = (dst_negative_sum_flatten_prefix_sum) + ge_balance_positive_flatten_prefix_sumresult))))))))) /\ (((exists dst_positive_code_flatten_last_row dst_positive_scale_flatten_last_row dst_negative_code_flatten_last_row dst_negative_scale_flatten_last_row dst_positive_flatten_last_row dst_negative_flatten_last_row. (((R) = (((((dst_positive_code_flatten_last_row) + (dst_positive_scale_flatten_last_row)) * S ((dst_positive_code_flatten_last_row) + (dst_positive_scale_flatten_last_row)) + ((dst_positive_scale_flatten_last_row) + (dst_positive_scale_flatten_last_row))) + (((dst_negative_code_flatten_last_row) + (dst_negative_scale_flatten_last_row)) * S ((dst_negative_code_flatten_last_row) + (dst_negative_scale_flatten_last_row)) + ((dst_negative_scale_flatten_last_row) + (dst_negative_scale_flatten_last_row)))) * S ((((dst_positive_code_flatten_last_row) + (dst_positive_scale_flatten_last_row)) * S ((dst_positive_code_flatten_last_row) + (dst_positive_scale_flatten_last_row)) + ((dst_positive_scale_flatten_last_row) + (dst_positive_scale_flatten_last_row))) + (((dst_negative_code_flatten_last_row) + (dst_negative_scale_flatten_last_row)) * S ((dst_negative_code_flatten_last_row) + (dst_negative_scale_flatten_last_row)) + ((dst_negative_scale_flatten_last_row) + (dst_negative_scale_flatten_last_row)))) + ((((dst_negative_code_flatten_last_row) + (dst_negative_scale_flatten_last_row)) * S ((dst_negative_code_flatten_last_row) + (dst_negative_scale_flatten_last_row)) + ((dst_negative_scale_flatten_last_row) + (dst_negative_scale_flatten_last_row))) + (((dst_negative_code_flatten_last_row) + (dst_negative_scale_flatten_last_row)) * S ((dst_negative_code_flatten_last_row) + (dst_negative_scale_flatten_last_row)) + ((dst_negative_scale_flatten_last_row) + (dst_negative_scale_flatten_last_row)))))) /\ (((((exists ff_h_pvs_flatten_last_rowpositive. ff_h_pvs_flatten_last_rowpositive + S (dst_positive_flatten_last_row) = S ((S (m)) * dst_positive_scale_flatten_last_row)) /\ exists ff_q_pvs_flatten_last_rowpositive. dst_positive_code_flatten_last_row = ff_q_pvs_flatten_last_rowpositive * S ((S (m)) * dst_positive_scale_flatten_last_row) + (dst_positive_flatten_last_row))) /\ (((((exists ff_h_pvs_flatten_last_rownegative. ff_h_pvs_flatten_last_rownegative + S (dst_negative_flatten_last_row) = S ((S (m)) * dst_negative_scale_flatten_last_row)) /\ exists ff_q_pvs_flatten_last_rownegative. dst_negative_code_flatten_last_row = ff_q_pvs_flatten_last_rownegative * S ((S (m)) * dst_negative_scale_flatten_last_row) + (dst_negative_flatten_last_row))) /\ (exists ge_balance_positive_flatten_last_rowvalue ge_balance_negative_flatten_last_rowvalue. (((((b) = 2 * (ge_balance_positive_flatten_last_rowvalue) /\ (ge_balance_negative_flatten_last_rowvalue) = 0) \/ exists ge_signed_half_flatten_last_rowvaluedecode. (((b) = 2 * ge_signed_half_flatten_last_rowvaluedecode + 1 /\ (ge_balance_positive_flatten_last_rowvalue) = 0) /\ (ge_balance_negative_flatten_last_rowvalue) = S ge_signed_half_flatten_last_rowvaluedecode))) /\ ((dst_positive_flatten_last_row) + ge_balance_negative_flatten_last_rowvalue = (dst_negative_flatten_last_row) + ge_balance_positive_flatten_last_rowvalue))))))))) /\ (exists dsa_ap_flatten_addition dsa_an_flatten_addition dsa_bp_flatten_addition dsa_bn_flatten_addition dsa_cp_flatten_addition dsa_cn_flatten_addition. (((((a) = 2 * (dsa_ap_flatten_addition) /\ (dsa_an_flatten_addition) = 0) \/ exists ge_signed_half_flatten_additionleft. (((a) = 2 * ge_signed_half_flatten_additionleft + 1 /\ (dsa_ap_flatten_addition) = 0) /\ (dsa_an_flatten_addition) = S ge_signed_half_flatten_additionleft))) /\ ((((((b) = 2 * (dsa_bp_flatten_addition) /\ (dsa_bn_flatten_addition) = 0) \/ exists ge_signed_half_flatten_additionright. (((b) = 2 * ge_signed_half_flatten_additionright + 1 /\ (dsa_bp_flatten_addition) = 0) /\ (dsa_bn_flatten_addition) = S ge_signed_half_flatten_additionright))) /\ ((((((z) = 2 * (dsa_cp_flatten_addition) /\ (dsa_cn_flatten_addition) = 0) \/ exists ge_signed_half_flatten_additionoutput. (((z) = 2 * ge_signed_half_flatten_additionoutput + 1 /\ (dsa_cp_flatten_addition) = 0) /\ (dsa_cn_flatten_addition) = S ge_signed_half_flatten_additionoutput))) /\ ((dsa_ap_flatten_addition + dsa_bp_flatten_addition) + dsa_cn_flatten_addition = (dsa_an_flatten_addition + dsa_bn_flatten_addition) + dsa_cp_flatten_addition))))))))))) - 0040
specialize divisor_signed_sum_successor_decompose (R) - 0041
specialize divisor_signed_sum_successor_decompose (m) - 0042
specialize divisor_signed_sum_successor_decompose (z) - 0043
apply divisor_signed_sum_successor_decompose - 0044
exact hs - 0045
cases hd - 0046
cases hd_witness - 0047
cases hd_witness_witness - 0048
cases hd_witness_witness_right - 0049
have hp : exists srs_slice_flatten_prefix. ((((exists dst_positive_code_flatten_prefixslicesource_table dst_positive_scale_flatten_prefixslicesource_table dst_negative_code_flatten_prefixslicesource_table dst_negative_scale_flatten_prefixslicesource_table. (((F) = (((((dst_positive_code_flatten_prefixslicesource_table) + (dst_positive_scale_flatten_prefixslicesource_table)) * S ((dst_positive_code_flatten_prefixslicesource_table) + (dst_positive_scale_flatten_prefixslicesource_table)) + ((dst_positive_scale_flatten_prefixslicesource_table) + (dst_positive_scale_flatten_prefixslicesource_table))) + (((dst_negative_code_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)) * S ((dst_negative_code_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)) + ((dst_negative_scale_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)))) * S ((((dst_positive_code_flatten_prefixslicesource_table) + (dst_positive_scale_flatten_prefixslicesource_table)) * S ((dst_positive_code_flatten_prefixslicesource_table) + (dst_positive_scale_flatten_prefixslicesource_table)) + ((dst_positive_scale_flatten_prefixslicesource_table) + (dst_positive_scale_flatten_prefixslicesource_table))) + (((dst_negative_code_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)) * S ((dst_negative_code_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)) + ((dst_negative_scale_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)))) + ((((dst_negative_code_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)) * S ((dst_negative_code_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)) + ((dst_negative_scale_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table))) + (((dst_negative_code_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)) * S ((dst_negative_code_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)) + ((dst_negative_scale_flatten_prefixslicesource_table) + (dst_negative_scale_flatten_prefixslicesource_table)))))) /\ (forall dst_index_flatten_prefixslicesource_table. (exists pvs_le_gap_flatten_prefixslicesource_tabledomain. pvs_le_gap_flatten_prefixslicesource_tabledomain + (dst_index_flatten_prefixslicesource_table) = (0)) -> exists dst_positive_flatten_prefixslicesource_table dst_negative_flatten_prefixslicesource_table dst_value_flatten_prefixslicesource_table. ((((exists ff_h_pvs_flatten_prefixslicesource_tableentrypositive. ff_h_pvs_flatten_prefixslicesource_tableentrypositive + S (dst_positive_flatten_prefixslicesource_table) = S ((S (dst_index_flatten_prefixslicesource_table)) * dst_positive_scale_flatten_prefixslicesource_table)) /\ exists ff_q_pvs_flatten_prefixslicesource_tableentrypositive. dst_positive_code_flatten_prefixslicesource_table = ff_q_pvs_flatten_prefixslicesource_tableentrypositive * S ((S (dst_index_flatten_prefixslicesource_table)) * dst_positive_scale_flatten_prefixslicesource_table) + (dst_positive_flatten_prefixslicesource_table))) /\ (((((exists ff_h_pvs_flatten_prefixslicesource_tableentrynegative. ff_h_pvs_flatten_prefixslicesource_tableentrynegative + S (dst_negative_flatten_prefixslicesource_table) = S ((S (dst_index_flatten_prefixslicesource_table)) * dst_negative_scale_flatten_prefixslicesource_table)) /\ exists ff_q_pvs_flatten_prefixslicesource_tableentrynegative. dst_negative_code_flatten_prefixslicesource_table = ff_q_pvs_flatten_prefixslicesource_tableentrynegative * S ((S (dst_index_flatten_prefixslicesource_table)) * dst_negative_scale_flatten_prefixslicesource_table) + (dst_negative_flatten_prefixslicesource_table))) /\ (exists ge_balance_positive_flatten_prefixslicesource_tableentryvalue ge_balance_negative_flatten_prefixslicesource_tableentryvalue. (((((dst_value_flatten_prefixslicesource_table) = 2 * (ge_balance_positive_flatten_prefixslicesource_tableentryvalue) /\ (ge_balance_negative_flatten_prefixslicesource_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_prefixslicesource_tableentryvaluedecode. (((dst_value_flatten_prefixslicesource_table) = 2 * ge_signed_half_flatten_prefixslicesource_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_prefixslicesource_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_prefixslicesource_tableentryvalue) = S ge_signed_half_flatten_prefixslicesource_tableentryvaluedecode))) /\ ((dst_positive_flatten_prefixslicesource_table) + ge_balance_negative_flatten_prefixslicesource_tableentryvalue = (dst_negative_flatten_prefixslicesource_table) + ge_balance_positive_flatten_prefixslicesource_tableentryvalue))))))))) /\ (((exists dst_positive_code_flatten_prefixsliceoutput_table dst_positive_scale_flatten_prefixsliceoutput_table dst_negative_code_flatten_prefixsliceoutput_table dst_negative_scale_flatten_prefixsliceoutput_table. (((srs_slice_flatten_prefix) = (((((dst_positive_code_flatten_prefixsliceoutput_table) + (dst_positive_scale_flatten_prefixsliceoutput_table)) * S ((dst_positive_code_flatten_prefixsliceoutput_table) + (dst_positive_scale_flatten_prefixsliceoutput_table)) + ((dst_positive_scale_flatten_prefixsliceoutput_table) + (dst_positive_scale_flatten_prefixsliceoutput_table))) + (((dst_negative_code_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)) * S ((dst_negative_code_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)) + ((dst_negative_scale_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)))) * S ((((dst_positive_code_flatten_prefixsliceoutput_table) + (dst_positive_scale_flatten_prefixsliceoutput_table)) * S ((dst_positive_code_flatten_prefixsliceoutput_table) + (dst_positive_scale_flatten_prefixsliceoutput_table)) + ((dst_positive_scale_flatten_prefixsliceoutput_table) + (dst_positive_scale_flatten_prefixsliceoutput_table))) + (((dst_negative_code_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)) * S ((dst_negative_code_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)) + ((dst_negative_scale_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)))) + ((((dst_negative_code_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)) * S ((dst_negative_code_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)) + ((dst_negative_scale_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table))) + (((dst_negative_code_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)) * S ((dst_negative_code_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)) + ((dst_negative_scale_flatten_prefixsliceoutput_table) + (dst_negative_scale_flatten_prefixsliceoutput_table)))))) /\ (forall dst_index_flatten_prefixsliceoutput_table. (exists pvs_le_gap_flatten_prefixsliceoutput_tabledomain. pvs_le_gap_flatten_prefixsliceoutput_tabledomain + (dst_index_flatten_prefixsliceoutput_table) = (m*n)) -> exists dst_positive_flatten_prefixsliceoutput_table dst_negative_flatten_prefixsliceoutput_table dst_value_flatten_prefixsliceoutput_table. ((((exists ff_h_pvs_flatten_prefixsliceoutput_tableentrypositive. ff_h_pvs_flatten_prefixsliceoutput_tableentrypositive + S (dst_positive_flatten_prefixsliceoutput_table) = S ((S (dst_index_flatten_prefixsliceoutput_table)) * dst_positive_scale_flatten_prefixsliceoutput_table)) /\ exists ff_q_pvs_flatten_prefixsliceoutput_tableentrypositive. dst_positive_code_flatten_prefixsliceoutput_table = ff_q_pvs_flatten_prefixsliceoutput_tableentrypositive * S ((S (dst_index_flatten_prefixsliceoutput_table)) * dst_positive_scale_flatten_prefixsliceoutput_table) + (dst_positive_flatten_prefixsliceoutput_table))) /\ (((((exists ff_h_pvs_flatten_prefixsliceoutput_tableentrynegative. ff_h_pvs_flatten_prefixsliceoutput_tableentrynegative + S (dst_negative_flatten_prefixsliceoutput_table) = S ((S (dst_index_flatten_prefixsliceoutput_table)) * dst_negative_scale_flatten_prefixsliceoutput_table)) /\ exists ff_q_pvs_flatten_prefixsliceoutput_tableentrynegative. dst_negative_code_flatten_prefixsliceoutput_table = ff_q_pvs_flatten_prefixsliceoutput_tableentrynegative * S ((S (dst_index_flatten_prefixsliceoutput_table)) * dst_negative_scale_flatten_prefixsliceoutput_table) + (dst_negative_flatten_prefixsliceoutput_table))) /\ (exists ge_balance_positive_flatten_prefixsliceoutput_tableentryvalue ge_balance_negative_flatten_prefixsliceoutput_tableentryvalue. (((((dst_value_flatten_prefixsliceoutput_table) = 2 * (ge_balance_positive_flatten_prefixsliceoutput_tableentryvalue) /\ (ge_balance_negative_flatten_prefixsliceoutput_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_prefixsliceoutput_tableentryvaluedecode. (((dst_value_flatten_prefixsliceoutput_table) = 2 * ge_signed_half_flatten_prefixsliceoutput_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_prefixsliceoutput_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_prefixsliceoutput_tableentryvalue) = S ge_signed_half_flatten_prefixsliceoutput_tableentryvaluedecode))) /\ ((dst_positive_flatten_prefixsliceoutput_table) + ge_balance_negative_flatten_prefixsliceoutput_tableentryvalue = (dst_negative_flatten_prefixsliceoutput_table) + ge_balance_positive_flatten_prefixsliceoutput_tableentryvalue))))))))) /\ (forall srs_index_flatten_prefixslice. (exists pvs_gap_flatten_prefixslicebound. pvs_gap_flatten_prefixslicebound + S (srs_index_flatten_prefixslice) = (m*n)) -> exists srs_value_flatten_prefixslice. (((exists dst_positive_code_flatten_prefixsliceentrysource dst_positive_scale_flatten_prefixsliceentrysource dst_negative_code_flatten_prefixsliceentrysource dst_negative_scale_flatten_prefixsliceentrysource dst_positive_flatten_prefixsliceentrysource dst_negative_flatten_prefixsliceentrysource. (((F) = (((((dst_positive_code_flatten_prefixsliceentrysource) + (dst_positive_scale_flatten_prefixsliceentrysource)) * S ((dst_positive_code_flatten_prefixsliceentrysource) + (dst_positive_scale_flatten_prefixsliceentrysource)) + ((dst_positive_scale_flatten_prefixsliceentrysource) + (dst_positive_scale_flatten_prefixsliceentrysource))) + (((dst_negative_code_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)) * S ((dst_negative_code_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)) + ((dst_negative_scale_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)))) * S ((((dst_positive_code_flatten_prefixsliceentrysource) + (dst_positive_scale_flatten_prefixsliceentrysource)) * S ((dst_positive_code_flatten_prefixsliceentrysource) + (dst_positive_scale_flatten_prefixsliceentrysource)) + ((dst_positive_scale_flatten_prefixsliceentrysource) + (dst_positive_scale_flatten_prefixsliceentrysource))) + (((dst_negative_code_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)) * S ((dst_negative_code_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)) + ((dst_negative_scale_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)))) + ((((dst_negative_code_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)) * S ((dst_negative_code_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)) + ((dst_negative_scale_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource))) + (((dst_negative_code_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)) * S ((dst_negative_code_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)) + ((dst_negative_scale_flatten_prefixsliceentrysource) + (dst_negative_scale_flatten_prefixsliceentrysource)))))) /\ (((((exists ff_h_pvs_flatten_prefixsliceentrysourcepositive. ff_h_pvs_flatten_prefixsliceentrysourcepositive + S (dst_positive_flatten_prefixsliceentrysource) = S ((S (((0) + ((1) * (srs_index_flatten_prefixslice))))) * dst_positive_scale_flatten_prefixsliceentrysource)) /\ exists ff_q_pvs_flatten_prefixsliceentrysourcepositive. dst_positive_code_flatten_prefixsliceentrysource = ff_q_pvs_flatten_prefixsliceentrysourcepositive * S ((S (((0) + ((1) * (srs_index_flatten_prefixslice))))) * dst_positive_scale_flatten_prefixsliceentrysource) + (dst_positive_flatten_prefixsliceentrysource))) /\ (((((exists ff_h_pvs_flatten_prefixsliceentrysourcenegative. ff_h_pvs_flatten_prefixsliceentrysourcenegative + S (dst_negative_flatten_prefixsliceentrysource) = S ((S (((0) + ((1) * (srs_index_flatten_prefixslice))))) * dst_negative_scale_flatten_prefixsliceentrysource)) /\ exists ff_q_pvs_flatten_prefixsliceentrysourcenegative. dst_negative_code_flatten_prefixsliceentrysource = ff_q_pvs_flatten_prefixsliceentrysourcenegative * S ((S (((0) + ((1) * (srs_index_flatten_prefixslice))))) * dst_negative_scale_flatten_prefixsliceentrysource) + (dst_negative_flatten_prefixsliceentrysource))) /\ (exists ge_balance_positive_flatten_prefixsliceentrysourcevalue ge_balance_negative_flatten_prefixsliceentrysourcevalue. (((((srs_value_flatten_prefixslice) = 2 * (ge_balance_positive_flatten_prefixsliceentrysourcevalue) /\ (ge_balance_negative_flatten_prefixsliceentrysourcevalue) = 0) \/ exists ge_signed_half_flatten_prefixsliceentrysourcevaluedecode. (((srs_value_flatten_prefixslice) = 2 * ge_signed_half_flatten_prefixsliceentrysourcevaluedecode + 1 /\ (ge_balance_positive_flatten_prefixsliceentrysourcevalue) = 0) /\ (ge_balance_negative_flatten_prefixsliceentrysourcevalue) = S ge_signed_half_flatten_prefixsliceentrysourcevaluedecode))) /\ ((dst_positive_flatten_prefixsliceentrysource) + ge_balance_negative_flatten_prefixsliceentrysourcevalue = (dst_negative_flatten_prefixsliceentrysource) + ge_balance_positive_flatten_prefixsliceentrysourcevalue))))))))) /\ (exists dst_positive_code_flatten_prefixsliceentryoutput dst_positive_scale_flatten_prefixsliceentryoutput dst_negative_code_flatten_prefixsliceentryoutput dst_negative_scale_flatten_prefixsliceentryoutput dst_positive_flatten_prefixsliceentryoutput dst_negative_flatten_prefixsliceentryoutput. (((srs_slice_flatten_prefix) = (((((dst_positive_code_flatten_prefixsliceentryoutput) + (dst_positive_scale_flatten_prefixsliceentryoutput)) * S ((dst_positive_code_flatten_prefixsliceentryoutput) + (dst_positive_scale_flatten_prefixsliceentryoutput)) + ((dst_positive_scale_flatten_prefixsliceentryoutput) + (dst_positive_scale_flatten_prefixsliceentryoutput))) + (((dst_negative_code_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)) * S ((dst_negative_code_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)) + ((dst_negative_scale_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)))) * S ((((dst_positive_code_flatten_prefixsliceentryoutput) + (dst_positive_scale_flatten_prefixsliceentryoutput)) * S ((dst_positive_code_flatten_prefixsliceentryoutput) + (dst_positive_scale_flatten_prefixsliceentryoutput)) + ((dst_positive_scale_flatten_prefixsliceentryoutput) + (dst_positive_scale_flatten_prefixsliceentryoutput))) + (((dst_negative_code_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)) * S ((dst_negative_code_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)) + ((dst_negative_scale_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)))) + ((((dst_negative_code_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)) * S ((dst_negative_code_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)) + ((dst_negative_scale_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput))) + (((dst_negative_code_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)) * S ((dst_negative_code_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)) + ((dst_negative_scale_flatten_prefixsliceentryoutput) + (dst_negative_scale_flatten_prefixsliceentryoutput)))))) /\ (((((exists ff_h_pvs_flatten_prefixsliceentryoutputpositive. ff_h_pvs_flatten_prefixsliceentryoutputpositive + S (dst_positive_flatten_prefixsliceentryoutput) = S ((S (srs_index_flatten_prefixslice)) * dst_positive_scale_flatten_prefixsliceentryoutput)) /\ exists ff_q_pvs_flatten_prefixsliceentryoutputpositive. dst_positive_code_flatten_prefixsliceentryoutput = ff_q_pvs_flatten_prefixsliceentryoutputpositive * S ((S (srs_index_flatten_prefixslice)) * dst_positive_scale_flatten_prefixsliceentryoutput) + (dst_positive_flatten_prefixsliceentryoutput))) /\ (((((exists ff_h_pvs_flatten_prefixsliceentryoutputnegative. ff_h_pvs_flatten_prefixsliceentryoutputnegative + S (dst_negative_flatten_prefixsliceentryoutput) = S ((S (srs_index_flatten_prefixslice)) * dst_negative_scale_flatten_prefixsliceentryoutput)) /\ exists ff_q_pvs_flatten_prefixsliceentryoutputnegative. dst_negative_code_flatten_prefixsliceentryoutput = ff_q_pvs_flatten_prefixsliceentryoutputnegative * S ((S (srs_index_flatten_prefixslice)) * dst_negative_scale_flatten_prefixsliceentryoutput) + (dst_negative_flatten_prefixsliceentryoutput))) /\ (exists ge_balance_positive_flatten_prefixsliceentryoutputvalue ge_balance_negative_flatten_prefixsliceentryoutputvalue. (((((srs_value_flatten_prefixslice) = 2 * (ge_balance_positive_flatten_prefixsliceentryoutputvalue) /\ (ge_balance_negative_flatten_prefixsliceentryoutputvalue) = 0) \/ exists ge_signed_half_flatten_prefixsliceentryoutputvaluedecode. (((srs_value_flatten_prefixslice) = 2 * ge_signed_half_flatten_prefixsliceentryoutputvaluedecode + 1 /\ (ge_balance_positive_flatten_prefixsliceentryoutputvalue) = 0) /\ (ge_balance_negative_flatten_prefixsliceentryoutputvalue) = S ge_signed_half_flatten_prefixsliceentryoutputvaluedecode))) /\ ((dst_positive_flatten_prefixsliceentryoutput) + ge_balance_negative_flatten_prefixsliceentryoutputvalue = (dst_negative_flatten_prefixsliceentryoutput) + ge_balance_positive_flatten_prefixsliceentryoutputvalue)))))))))))))))) /\ (exists dst_positive_code_flatten_prefixsum dst_positive_scale_flatten_prefixsum dst_negative_code_flatten_prefixsum dst_negative_scale_flatten_prefixsum dst_positive_sum_flatten_prefixsum dst_negative_sum_flatten_prefixsum. (((srs_slice_flatten_prefix) = (((((dst_positive_code_flatten_prefixsum) + (dst_positive_scale_flatten_prefixsum)) * S ((dst_positive_code_flatten_prefixsum) + (dst_positive_scale_flatten_prefixsum)) + ((dst_positive_scale_flatten_prefixsum) + (dst_positive_scale_flatten_prefixsum))) + (((dst_negative_code_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)) * S ((dst_negative_code_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)) + ((dst_negative_scale_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)))) * S ((((dst_positive_code_flatten_prefixsum) + (dst_positive_scale_flatten_prefixsum)) * S ((dst_positive_code_flatten_prefixsum) + (dst_positive_scale_flatten_prefixsum)) + ((dst_positive_scale_flatten_prefixsum) + (dst_positive_scale_flatten_prefixsum))) + (((dst_negative_code_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)) * S ((dst_negative_code_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)) + ((dst_negative_scale_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)))) + ((((dst_negative_code_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)) * S ((dst_negative_code_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)) + ((dst_negative_scale_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum))) + (((dst_negative_code_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)) * S ((dst_negative_code_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)) + ((dst_negative_scale_flatten_prefixsum) + (dst_negative_scale_flatten_prefixsum)))))) /\ (((exists fs_u_dst_flatten_prefixsumpositive fs_v_dst_flatten_prefixsumpositive. ((((exists fs_h_dst_flatten_prefixsumpositive_body_start. fs_h_dst_flatten_prefixsumpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_prefixsumpositive)) /\ exists fs_q_dst_flatten_prefixsumpositive_body_start. fs_u_dst_flatten_prefixsumpositive = fs_q_dst_flatten_prefixsumpositive_body_start * S ((S (0)) * fs_v_dst_flatten_prefixsumpositive) + (0))) /\ ((((exists fs_h_dst_flatten_prefixsumpositive_body_terminal. fs_h_dst_flatten_prefixsumpositive_body_terminal + S (dst_positive_sum_flatten_prefixsum) = S ((S (m*n)) * fs_v_dst_flatten_prefixsumpositive)) /\ exists fs_q_dst_flatten_prefixsumpositive_body_terminal. fs_u_dst_flatten_prefixsumpositive = fs_q_dst_flatten_prefixsumpositive_body_terminal * S ((S (m*n)) * fs_v_dst_flatten_prefixsumpositive) + (dst_positive_sum_flatten_prefixsum))) /\ forall fs_i_dst_flatten_prefixsumpositive_body_steps. (exists fs_lt_dst_flatten_prefixsumpositive_body_steps_bound. fs_lt_dst_flatten_prefixsumpositive_body_steps_bound + S fs_i_dst_flatten_prefixsumpositive_body_steps = m*n) -> exists fs_a_dst_flatten_prefixsumpositive_body_steps fs_r_dst_flatten_prefixsumpositive_body_steps fs_s_dst_flatten_prefixsumpositive_body_steps. ((((exists fs_h_dst_flatten_prefixsumpositive_body_steps_summand. fs_h_dst_flatten_prefixsumpositive_body_steps_summand + S (fs_a_dst_flatten_prefixsumpositive_body_steps) = S ((S (fs_i_dst_flatten_prefixsumpositive_body_steps)) * dst_positive_scale_flatten_prefixsum)) /\ exists fs_q_dst_flatten_prefixsumpositive_body_steps_summand. dst_positive_code_flatten_prefixsum = fs_q_dst_flatten_prefixsumpositive_body_steps_summand * S ((S (fs_i_dst_flatten_prefixsumpositive_body_steps)) * dst_positive_scale_flatten_prefixsum) + (fs_a_dst_flatten_prefixsumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_prefixsumpositive_body_steps_partial. fs_h_dst_flatten_prefixsumpositive_body_steps_partial + S (fs_r_dst_flatten_prefixsumpositive_body_steps) = S ((S (fs_i_dst_flatten_prefixsumpositive_body_steps)) * fs_v_dst_flatten_prefixsumpositive)) /\ exists fs_q_dst_flatten_prefixsumpositive_body_steps_partial. fs_u_dst_flatten_prefixsumpositive = fs_q_dst_flatten_prefixsumpositive_body_steps_partial * S ((S (fs_i_dst_flatten_prefixsumpositive_body_steps)) * fs_v_dst_flatten_prefixsumpositive) + (fs_r_dst_flatten_prefixsumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_prefixsumpositive_body_steps_successor. fs_h_dst_flatten_prefixsumpositive_body_steps_successor + S (fs_s_dst_flatten_prefixsumpositive_body_steps) = S ((S (S fs_i_dst_flatten_prefixsumpositive_body_steps)) * fs_v_dst_flatten_prefixsumpositive)) /\ exists fs_q_dst_flatten_prefixsumpositive_body_steps_successor. fs_u_dst_flatten_prefixsumpositive = fs_q_dst_flatten_prefixsumpositive_body_steps_successor * S ((S (S fs_i_dst_flatten_prefixsumpositive_body_steps)) * fs_v_dst_flatten_prefixsumpositive) + (fs_s_dst_flatten_prefixsumpositive_body_steps))) /\ fs_s_dst_flatten_prefixsumpositive_body_steps = fs_r_dst_flatten_prefixsumpositive_body_steps + fs_a_dst_flatten_prefixsumpositive_body_steps)))))) /\ (((exists fs_u_dst_flatten_prefixsumnegative fs_v_dst_flatten_prefixsumnegative. ((((exists fs_h_dst_flatten_prefixsumnegative_body_start. fs_h_dst_flatten_prefixsumnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_prefixsumnegative)) /\ exists fs_q_dst_flatten_prefixsumnegative_body_start. fs_u_dst_flatten_prefixsumnegative = fs_q_dst_flatten_prefixsumnegative_body_start * S ((S (0)) * fs_v_dst_flatten_prefixsumnegative) + (0))) /\ ((((exists fs_h_dst_flatten_prefixsumnegative_body_terminal. fs_h_dst_flatten_prefixsumnegative_body_terminal + S (dst_negative_sum_flatten_prefixsum) = S ((S (m*n)) * fs_v_dst_flatten_prefixsumnegative)) /\ exists fs_q_dst_flatten_prefixsumnegative_body_terminal. fs_u_dst_flatten_prefixsumnegative = fs_q_dst_flatten_prefixsumnegative_body_terminal * S ((S (m*n)) * fs_v_dst_flatten_prefixsumnegative) + (dst_negative_sum_flatten_prefixsum))) /\ forall fs_i_dst_flatten_prefixsumnegative_body_steps. (exists fs_lt_dst_flatten_prefixsumnegative_body_steps_bound. fs_lt_dst_flatten_prefixsumnegative_body_steps_bound + S fs_i_dst_flatten_prefixsumnegative_body_steps = m*n) -> exists fs_a_dst_flatten_prefixsumnegative_body_steps fs_r_dst_flatten_prefixsumnegative_body_steps fs_s_dst_flatten_prefixsumnegative_body_steps. ((((exists fs_h_dst_flatten_prefixsumnegative_body_steps_summand. fs_h_dst_flatten_prefixsumnegative_body_steps_summand + S (fs_a_dst_flatten_prefixsumnegative_body_steps) = S ((S (fs_i_dst_flatten_prefixsumnegative_body_steps)) * dst_negative_scale_flatten_prefixsum)) /\ exists fs_q_dst_flatten_prefixsumnegative_body_steps_summand. dst_negative_code_flatten_prefixsum = fs_q_dst_flatten_prefixsumnegative_body_steps_summand * S ((S (fs_i_dst_flatten_prefixsumnegative_body_steps)) * dst_negative_scale_flatten_prefixsum) + (fs_a_dst_flatten_prefixsumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_prefixsumnegative_body_steps_partial. fs_h_dst_flatten_prefixsumnegative_body_steps_partial + S (fs_r_dst_flatten_prefixsumnegative_body_steps) = S ((S (fs_i_dst_flatten_prefixsumnegative_body_steps)) * fs_v_dst_flatten_prefixsumnegative)) /\ exists fs_q_dst_flatten_prefixsumnegative_body_steps_partial. fs_u_dst_flatten_prefixsumnegative = fs_q_dst_flatten_prefixsumnegative_body_steps_partial * S ((S (fs_i_dst_flatten_prefixsumnegative_body_steps)) * fs_v_dst_flatten_prefixsumnegative) + (fs_r_dst_flatten_prefixsumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_prefixsumnegative_body_steps_successor. fs_h_dst_flatten_prefixsumnegative_body_steps_successor + S (fs_s_dst_flatten_prefixsumnegative_body_steps) = S ((S (S fs_i_dst_flatten_prefixsumnegative_body_steps)) * fs_v_dst_flatten_prefixsumnegative)) /\ exists fs_q_dst_flatten_prefixsumnegative_body_steps_successor. fs_u_dst_flatten_prefixsumnegative = fs_q_dst_flatten_prefixsumnegative_body_steps_successor * S ((S (S fs_i_dst_flatten_prefixsumnegative_body_steps)) * fs_v_dst_flatten_prefixsumnegative) + (fs_s_dst_flatten_prefixsumnegative_body_steps))) /\ fs_s_dst_flatten_prefixsumnegative_body_steps = fs_r_dst_flatten_prefixsumnegative_body_steps + fs_a_dst_flatten_prefixsumnegative_body_steps)))))) /\ (exists ge_balance_positive_flatten_prefixsumresult ge_balance_negative_flatten_prefixsumresult. (((((x) = 2 * (ge_balance_positive_flatten_prefixsumresult) /\ (ge_balance_negative_flatten_prefixsumresult) = 0) \/ exists ge_signed_half_flatten_prefixsumresultdecode. (((x) = 2 * ge_signed_half_flatten_prefixsumresultdecode + 1 /\ (ge_balance_positive_flatten_prefixsumresult) = 0) /\ (ge_balance_negative_flatten_prefixsumresult) = S ge_signed_half_flatten_prefixsumresultdecode))) /\ ((dst_positive_sum_flatten_prefixsum) + ge_balance_negative_flatten_prefixsumresult = (dst_negative_sum_flatten_prefixsum) + ge_balance_positive_flatten_prefixsumresult)))))))))) - 0050
specialize IH (F) - 0051
specialize IH (R) - 0052
specialize IH (n) - 0053
specialize IH (x) - 0054
apply IH - 0055
specialize signed_rectangular_row_sums_restrict_outer (F) - 0056
specialize signed_rectangular_row_sums_restrict_outer (R) - 0057
specialize signed_rectangular_row_sums_restrict_outer (0) - 0058
specialize signed_rectangular_row_sums_restrict_outer (n) - 0059
specialize signed_rectangular_row_sums_restrict_outer (1) - 0060
specialize signed_rectangular_row_sums_restrict_outer (m) - 0061
specialize signed_rectangular_row_sums_restrict_outer (n) - 0062
apply signed_rectangular_row_sums_restrict_outer - 0063
exact hr - 0064
exact hd_witness_witness_left - 0065
have hl : exists srs_slice_flatten_last. ((((exists dst_positive_code_flatten_lastslicesource_table dst_positive_scale_flatten_lastslicesource_table dst_negative_code_flatten_lastslicesource_table dst_negative_scale_flatten_lastslicesource_table. (((F) = (((((dst_positive_code_flatten_lastslicesource_table) + (dst_positive_scale_flatten_lastslicesource_table)) * S ((dst_positive_code_flatten_lastslicesource_table) + (dst_positive_scale_flatten_lastslicesource_table)) + ((dst_positive_scale_flatten_lastslicesource_table) + (dst_positive_scale_flatten_lastslicesource_table))) + (((dst_negative_code_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)) * S ((dst_negative_code_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)) + ((dst_negative_scale_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)))) * S ((((dst_positive_code_flatten_lastslicesource_table) + (dst_positive_scale_flatten_lastslicesource_table)) * S ((dst_positive_code_flatten_lastslicesource_table) + (dst_positive_scale_flatten_lastslicesource_table)) + ((dst_positive_scale_flatten_lastslicesource_table) + (dst_positive_scale_flatten_lastslicesource_table))) + (((dst_negative_code_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)) * S ((dst_negative_code_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)) + ((dst_negative_scale_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)))) + ((((dst_negative_code_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)) * S ((dst_negative_code_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)) + ((dst_negative_scale_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table))) + (((dst_negative_code_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)) * S ((dst_negative_code_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)) + ((dst_negative_scale_flatten_lastslicesource_table) + (dst_negative_scale_flatten_lastslicesource_table)))))) /\ (forall dst_index_flatten_lastslicesource_table. (exists pvs_le_gap_flatten_lastslicesource_tabledomain. pvs_le_gap_flatten_lastslicesource_tabledomain + (dst_index_flatten_lastslicesource_table) = (0)) -> exists dst_positive_flatten_lastslicesource_table dst_negative_flatten_lastslicesource_table dst_value_flatten_lastslicesource_table. ((((exists ff_h_pvs_flatten_lastslicesource_tableentrypositive. ff_h_pvs_flatten_lastslicesource_tableentrypositive + S (dst_positive_flatten_lastslicesource_table) = S ((S (dst_index_flatten_lastslicesource_table)) * dst_positive_scale_flatten_lastslicesource_table)) /\ exists ff_q_pvs_flatten_lastslicesource_tableentrypositive. dst_positive_code_flatten_lastslicesource_table = ff_q_pvs_flatten_lastslicesource_tableentrypositive * S ((S (dst_index_flatten_lastslicesource_table)) * dst_positive_scale_flatten_lastslicesource_table) + (dst_positive_flatten_lastslicesource_table))) /\ (((((exists ff_h_pvs_flatten_lastslicesource_tableentrynegative. ff_h_pvs_flatten_lastslicesource_tableentrynegative + S (dst_negative_flatten_lastslicesource_table) = S ((S (dst_index_flatten_lastslicesource_table)) * dst_negative_scale_flatten_lastslicesource_table)) /\ exists ff_q_pvs_flatten_lastslicesource_tableentrynegative. dst_negative_code_flatten_lastslicesource_table = ff_q_pvs_flatten_lastslicesource_tableentrynegative * S ((S (dst_index_flatten_lastslicesource_table)) * dst_negative_scale_flatten_lastslicesource_table) + (dst_negative_flatten_lastslicesource_table))) /\ (exists ge_balance_positive_flatten_lastslicesource_tableentryvalue ge_balance_negative_flatten_lastslicesource_tableentryvalue. (((((dst_value_flatten_lastslicesource_table) = 2 * (ge_balance_positive_flatten_lastslicesource_tableentryvalue) /\ (ge_balance_negative_flatten_lastslicesource_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_lastslicesource_tableentryvaluedecode. (((dst_value_flatten_lastslicesource_table) = 2 * ge_signed_half_flatten_lastslicesource_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_lastslicesource_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_lastslicesource_tableentryvalue) = S ge_signed_half_flatten_lastslicesource_tableentryvaluedecode))) /\ ((dst_positive_flatten_lastslicesource_table) + ge_balance_negative_flatten_lastslicesource_tableentryvalue = (dst_negative_flatten_lastslicesource_table) + ge_balance_positive_flatten_lastslicesource_tableentryvalue))))))))) /\ (((exists dst_positive_code_flatten_lastsliceoutput_table dst_positive_scale_flatten_lastsliceoutput_table dst_negative_code_flatten_lastsliceoutput_table dst_negative_scale_flatten_lastsliceoutput_table. (((srs_slice_flatten_last) = (((((dst_positive_code_flatten_lastsliceoutput_table) + (dst_positive_scale_flatten_lastsliceoutput_table)) * S ((dst_positive_code_flatten_lastsliceoutput_table) + (dst_positive_scale_flatten_lastsliceoutput_table)) + ((dst_positive_scale_flatten_lastsliceoutput_table) + (dst_positive_scale_flatten_lastsliceoutput_table))) + (((dst_negative_code_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)) * S ((dst_negative_code_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)) + ((dst_negative_scale_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)))) * S ((((dst_positive_code_flatten_lastsliceoutput_table) + (dst_positive_scale_flatten_lastsliceoutput_table)) * S ((dst_positive_code_flatten_lastsliceoutput_table) + (dst_positive_scale_flatten_lastsliceoutput_table)) + ((dst_positive_scale_flatten_lastsliceoutput_table) + (dst_positive_scale_flatten_lastsliceoutput_table))) + (((dst_negative_code_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)) * S ((dst_negative_code_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)) + ((dst_negative_scale_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)))) + ((((dst_negative_code_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)) * S ((dst_negative_code_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)) + ((dst_negative_scale_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table))) + (((dst_negative_code_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)) * S ((dst_negative_code_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)) + ((dst_negative_scale_flatten_lastsliceoutput_table) + (dst_negative_scale_flatten_lastsliceoutput_table)))))) /\ (forall dst_index_flatten_lastsliceoutput_table. (exists pvs_le_gap_flatten_lastsliceoutput_tabledomain. pvs_le_gap_flatten_lastsliceoutput_tabledomain + (dst_index_flatten_lastsliceoutput_table) = (n)) -> exists dst_positive_flatten_lastsliceoutput_table dst_negative_flatten_lastsliceoutput_table dst_value_flatten_lastsliceoutput_table. ((((exists ff_h_pvs_flatten_lastsliceoutput_tableentrypositive. ff_h_pvs_flatten_lastsliceoutput_tableentrypositive + S (dst_positive_flatten_lastsliceoutput_table) = S ((S (dst_index_flatten_lastsliceoutput_table)) * dst_positive_scale_flatten_lastsliceoutput_table)) /\ exists ff_q_pvs_flatten_lastsliceoutput_tableentrypositive. dst_positive_code_flatten_lastsliceoutput_table = ff_q_pvs_flatten_lastsliceoutput_tableentrypositive * S ((S (dst_index_flatten_lastsliceoutput_table)) * dst_positive_scale_flatten_lastsliceoutput_table) + (dst_positive_flatten_lastsliceoutput_table))) /\ (((((exists ff_h_pvs_flatten_lastsliceoutput_tableentrynegative. ff_h_pvs_flatten_lastsliceoutput_tableentrynegative + S (dst_negative_flatten_lastsliceoutput_table) = S ((S (dst_index_flatten_lastsliceoutput_table)) * dst_negative_scale_flatten_lastsliceoutput_table)) /\ exists ff_q_pvs_flatten_lastsliceoutput_tableentrynegative. dst_negative_code_flatten_lastsliceoutput_table = ff_q_pvs_flatten_lastsliceoutput_tableentrynegative * S ((S (dst_index_flatten_lastsliceoutput_table)) * dst_negative_scale_flatten_lastsliceoutput_table) + (dst_negative_flatten_lastsliceoutput_table))) /\ (exists ge_balance_positive_flatten_lastsliceoutput_tableentryvalue ge_balance_negative_flatten_lastsliceoutput_tableentryvalue. (((((dst_value_flatten_lastsliceoutput_table) = 2 * (ge_balance_positive_flatten_lastsliceoutput_tableentryvalue) /\ (ge_balance_negative_flatten_lastsliceoutput_tableentryvalue) = 0) \/ exists ge_signed_half_flatten_lastsliceoutput_tableentryvaluedecode. (((dst_value_flatten_lastsliceoutput_table) = 2 * ge_signed_half_flatten_lastsliceoutput_tableentryvaluedecode + 1 /\ (ge_balance_positive_flatten_lastsliceoutput_tableentryvalue) = 0) /\ (ge_balance_negative_flatten_lastsliceoutput_tableentryvalue) = S ge_signed_half_flatten_lastsliceoutput_tableentryvaluedecode))) /\ ((dst_positive_flatten_lastsliceoutput_table) + ge_balance_negative_flatten_lastsliceoutput_tableentryvalue = (dst_negative_flatten_lastsliceoutput_table) + ge_balance_positive_flatten_lastsliceoutput_tableentryvalue))))))))) /\ (forall srs_index_flatten_lastslice. (exists pvs_gap_flatten_lastslicebound. pvs_gap_flatten_lastslicebound + S (srs_index_flatten_lastslice) = (n)) -> exists srs_value_flatten_lastslice. (((exists dst_positive_code_flatten_lastsliceentrysource dst_positive_scale_flatten_lastsliceentrysource dst_negative_code_flatten_lastsliceentrysource dst_negative_scale_flatten_lastsliceentrysource dst_positive_flatten_lastsliceentrysource dst_negative_flatten_lastsliceentrysource. (((F) = (((((dst_positive_code_flatten_lastsliceentrysource) + (dst_positive_scale_flatten_lastsliceentrysource)) * S ((dst_positive_code_flatten_lastsliceentrysource) + (dst_positive_scale_flatten_lastsliceentrysource)) + ((dst_positive_scale_flatten_lastsliceentrysource) + (dst_positive_scale_flatten_lastsliceentrysource))) + (((dst_negative_code_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)) * S ((dst_negative_code_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)) + ((dst_negative_scale_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)))) * S ((((dst_positive_code_flatten_lastsliceentrysource) + (dst_positive_scale_flatten_lastsliceentrysource)) * S ((dst_positive_code_flatten_lastsliceentrysource) + (dst_positive_scale_flatten_lastsliceentrysource)) + ((dst_positive_scale_flatten_lastsliceentrysource) + (dst_positive_scale_flatten_lastsliceentrysource))) + (((dst_negative_code_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)) * S ((dst_negative_code_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)) + ((dst_negative_scale_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)))) + ((((dst_negative_code_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)) * S ((dst_negative_code_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)) + ((dst_negative_scale_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource))) + (((dst_negative_code_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)) * S ((dst_negative_code_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)) + ((dst_negative_scale_flatten_lastsliceentrysource) + (dst_negative_scale_flatten_lastsliceentrysource)))))) /\ (((((exists ff_h_pvs_flatten_lastsliceentrysourcepositive. ff_h_pvs_flatten_lastsliceentrysourcepositive + S (dst_positive_flatten_lastsliceentrysource) = S ((S (((((0) + ((n) * (m)))) + ((1) * (srs_index_flatten_lastslice))))) * dst_positive_scale_flatten_lastsliceentrysource)) /\ exists ff_q_pvs_flatten_lastsliceentrysourcepositive. dst_positive_code_flatten_lastsliceentrysource = ff_q_pvs_flatten_lastsliceentrysourcepositive * S ((S (((((0) + ((n) * (m)))) + ((1) * (srs_index_flatten_lastslice))))) * dst_positive_scale_flatten_lastsliceentrysource) + (dst_positive_flatten_lastsliceentrysource))) /\ (((((exists ff_h_pvs_flatten_lastsliceentrysourcenegative. ff_h_pvs_flatten_lastsliceentrysourcenegative + S (dst_negative_flatten_lastsliceentrysource) = S ((S (((((0) + ((n) * (m)))) + ((1) * (srs_index_flatten_lastslice))))) * dst_negative_scale_flatten_lastsliceentrysource)) /\ exists ff_q_pvs_flatten_lastsliceentrysourcenegative. dst_negative_code_flatten_lastsliceentrysource = ff_q_pvs_flatten_lastsliceentrysourcenegative * S ((S (((((0) + ((n) * (m)))) + ((1) * (srs_index_flatten_lastslice))))) * dst_negative_scale_flatten_lastsliceentrysource) + (dst_negative_flatten_lastsliceentrysource))) /\ (exists ge_balance_positive_flatten_lastsliceentrysourcevalue ge_balance_negative_flatten_lastsliceentrysourcevalue. (((((srs_value_flatten_lastslice) = 2 * (ge_balance_positive_flatten_lastsliceentrysourcevalue) /\ (ge_balance_negative_flatten_lastsliceentrysourcevalue) = 0) \/ exists ge_signed_half_flatten_lastsliceentrysourcevaluedecode. (((srs_value_flatten_lastslice) = 2 * ge_signed_half_flatten_lastsliceentrysourcevaluedecode + 1 /\ (ge_balance_positive_flatten_lastsliceentrysourcevalue) = 0) /\ (ge_balance_negative_flatten_lastsliceentrysourcevalue) = S ge_signed_half_flatten_lastsliceentrysourcevaluedecode))) /\ ((dst_positive_flatten_lastsliceentrysource) + ge_balance_negative_flatten_lastsliceentrysourcevalue = (dst_negative_flatten_lastsliceentrysource) + ge_balance_positive_flatten_lastsliceentrysourcevalue))))))))) /\ (exists dst_positive_code_flatten_lastsliceentryoutput dst_positive_scale_flatten_lastsliceentryoutput dst_negative_code_flatten_lastsliceentryoutput dst_negative_scale_flatten_lastsliceentryoutput dst_positive_flatten_lastsliceentryoutput dst_negative_flatten_lastsliceentryoutput. (((srs_slice_flatten_last) = (((((dst_positive_code_flatten_lastsliceentryoutput) + (dst_positive_scale_flatten_lastsliceentryoutput)) * S ((dst_positive_code_flatten_lastsliceentryoutput) + (dst_positive_scale_flatten_lastsliceentryoutput)) + ((dst_positive_scale_flatten_lastsliceentryoutput) + (dst_positive_scale_flatten_lastsliceentryoutput))) + (((dst_negative_code_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)) * S ((dst_negative_code_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)) + ((dst_negative_scale_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)))) * S ((((dst_positive_code_flatten_lastsliceentryoutput) + (dst_positive_scale_flatten_lastsliceentryoutput)) * S ((dst_positive_code_flatten_lastsliceentryoutput) + (dst_positive_scale_flatten_lastsliceentryoutput)) + ((dst_positive_scale_flatten_lastsliceentryoutput) + (dst_positive_scale_flatten_lastsliceentryoutput))) + (((dst_negative_code_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)) * S ((dst_negative_code_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)) + ((dst_negative_scale_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)))) + ((((dst_negative_code_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)) * S ((dst_negative_code_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)) + ((dst_negative_scale_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput))) + (((dst_negative_code_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)) * S ((dst_negative_code_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)) + ((dst_negative_scale_flatten_lastsliceentryoutput) + (dst_negative_scale_flatten_lastsliceentryoutput)))))) /\ (((((exists ff_h_pvs_flatten_lastsliceentryoutputpositive. ff_h_pvs_flatten_lastsliceentryoutputpositive + S (dst_positive_flatten_lastsliceentryoutput) = S ((S (srs_index_flatten_lastslice)) * dst_positive_scale_flatten_lastsliceentryoutput)) /\ exists ff_q_pvs_flatten_lastsliceentryoutputpositive. dst_positive_code_flatten_lastsliceentryoutput = ff_q_pvs_flatten_lastsliceentryoutputpositive * S ((S (srs_index_flatten_lastslice)) * dst_positive_scale_flatten_lastsliceentryoutput) + (dst_positive_flatten_lastsliceentryoutput))) /\ (((((exists ff_h_pvs_flatten_lastsliceentryoutputnegative. ff_h_pvs_flatten_lastsliceentryoutputnegative + S (dst_negative_flatten_lastsliceentryoutput) = S ((S (srs_index_flatten_lastslice)) * dst_negative_scale_flatten_lastsliceentryoutput)) /\ exists ff_q_pvs_flatten_lastsliceentryoutputnegative. dst_negative_code_flatten_lastsliceentryoutput = ff_q_pvs_flatten_lastsliceentryoutputnegative * S ((S (srs_index_flatten_lastslice)) * dst_negative_scale_flatten_lastsliceentryoutput) + (dst_negative_flatten_lastsliceentryoutput))) /\ (exists ge_balance_positive_flatten_lastsliceentryoutputvalue ge_balance_negative_flatten_lastsliceentryoutputvalue. (((((srs_value_flatten_lastslice) = 2 * (ge_balance_positive_flatten_lastsliceentryoutputvalue) /\ (ge_balance_negative_flatten_lastsliceentryoutputvalue) = 0) \/ exists ge_signed_half_flatten_lastsliceentryoutputvaluedecode. (((srs_value_flatten_lastslice) = 2 * ge_signed_half_flatten_lastsliceentryoutputvaluedecode + 1 /\ (ge_balance_positive_flatten_lastsliceentryoutputvalue) = 0) /\ (ge_balance_negative_flatten_lastsliceentryoutputvalue) = S ge_signed_half_flatten_lastsliceentryoutputvaluedecode))) /\ ((dst_positive_flatten_lastsliceentryoutput) + ge_balance_negative_flatten_lastsliceentryoutputvalue = (dst_negative_flatten_lastsliceentryoutput) + ge_balance_positive_flatten_lastsliceentryoutputvalue)))))))))))))))) /\ (exists dst_positive_code_flatten_lastsum dst_positive_scale_flatten_lastsum dst_negative_code_flatten_lastsum dst_negative_scale_flatten_lastsum dst_positive_sum_flatten_lastsum dst_negative_sum_flatten_lastsum. (((srs_slice_flatten_last) = (((((dst_positive_code_flatten_lastsum) + (dst_positive_scale_flatten_lastsum)) * S ((dst_positive_code_flatten_lastsum) + (dst_positive_scale_flatten_lastsum)) + ((dst_positive_scale_flatten_lastsum) + (dst_positive_scale_flatten_lastsum))) + (((dst_negative_code_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)) * S ((dst_negative_code_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)) + ((dst_negative_scale_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)))) * S ((((dst_positive_code_flatten_lastsum) + (dst_positive_scale_flatten_lastsum)) * S ((dst_positive_code_flatten_lastsum) + (dst_positive_scale_flatten_lastsum)) + ((dst_positive_scale_flatten_lastsum) + (dst_positive_scale_flatten_lastsum))) + (((dst_negative_code_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)) * S ((dst_negative_code_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)) + ((dst_negative_scale_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)))) + ((((dst_negative_code_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)) * S ((dst_negative_code_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)) + ((dst_negative_scale_flatten_lastsum) + (dst_negative_scale_flatten_lastsum))) + (((dst_negative_code_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)) * S ((dst_negative_code_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)) + ((dst_negative_scale_flatten_lastsum) + (dst_negative_scale_flatten_lastsum)))))) /\ (((exists fs_u_dst_flatten_lastsumpositive fs_v_dst_flatten_lastsumpositive. ((((exists fs_h_dst_flatten_lastsumpositive_body_start. fs_h_dst_flatten_lastsumpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_lastsumpositive)) /\ exists fs_q_dst_flatten_lastsumpositive_body_start. fs_u_dst_flatten_lastsumpositive = fs_q_dst_flatten_lastsumpositive_body_start * S ((S (0)) * fs_v_dst_flatten_lastsumpositive) + (0))) /\ ((((exists fs_h_dst_flatten_lastsumpositive_body_terminal. fs_h_dst_flatten_lastsumpositive_body_terminal + S (dst_positive_sum_flatten_lastsum) = S ((S (n)) * fs_v_dst_flatten_lastsumpositive)) /\ exists fs_q_dst_flatten_lastsumpositive_body_terminal. fs_u_dst_flatten_lastsumpositive = fs_q_dst_flatten_lastsumpositive_body_terminal * S ((S (n)) * fs_v_dst_flatten_lastsumpositive) + (dst_positive_sum_flatten_lastsum))) /\ forall fs_i_dst_flatten_lastsumpositive_body_steps. (exists fs_lt_dst_flatten_lastsumpositive_body_steps_bound. fs_lt_dst_flatten_lastsumpositive_body_steps_bound + S fs_i_dst_flatten_lastsumpositive_body_steps = n) -> exists fs_a_dst_flatten_lastsumpositive_body_steps fs_r_dst_flatten_lastsumpositive_body_steps fs_s_dst_flatten_lastsumpositive_body_steps. ((((exists fs_h_dst_flatten_lastsumpositive_body_steps_summand. fs_h_dst_flatten_lastsumpositive_body_steps_summand + S (fs_a_dst_flatten_lastsumpositive_body_steps) = S ((S (fs_i_dst_flatten_lastsumpositive_body_steps)) * dst_positive_scale_flatten_lastsum)) /\ exists fs_q_dst_flatten_lastsumpositive_body_steps_summand. dst_positive_code_flatten_lastsum = fs_q_dst_flatten_lastsumpositive_body_steps_summand * S ((S (fs_i_dst_flatten_lastsumpositive_body_steps)) * dst_positive_scale_flatten_lastsum) + (fs_a_dst_flatten_lastsumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_lastsumpositive_body_steps_partial. fs_h_dst_flatten_lastsumpositive_body_steps_partial + S (fs_r_dst_flatten_lastsumpositive_body_steps) = S ((S (fs_i_dst_flatten_lastsumpositive_body_steps)) * fs_v_dst_flatten_lastsumpositive)) /\ exists fs_q_dst_flatten_lastsumpositive_body_steps_partial. fs_u_dst_flatten_lastsumpositive = fs_q_dst_flatten_lastsumpositive_body_steps_partial * S ((S (fs_i_dst_flatten_lastsumpositive_body_steps)) * fs_v_dst_flatten_lastsumpositive) + (fs_r_dst_flatten_lastsumpositive_body_steps))) /\ ((((exists fs_h_dst_flatten_lastsumpositive_body_steps_successor. fs_h_dst_flatten_lastsumpositive_body_steps_successor + S (fs_s_dst_flatten_lastsumpositive_body_steps) = S ((S (S fs_i_dst_flatten_lastsumpositive_body_steps)) * fs_v_dst_flatten_lastsumpositive)) /\ exists fs_q_dst_flatten_lastsumpositive_body_steps_successor. fs_u_dst_flatten_lastsumpositive = fs_q_dst_flatten_lastsumpositive_body_steps_successor * S ((S (S fs_i_dst_flatten_lastsumpositive_body_steps)) * fs_v_dst_flatten_lastsumpositive) + (fs_s_dst_flatten_lastsumpositive_body_steps))) /\ fs_s_dst_flatten_lastsumpositive_body_steps = fs_r_dst_flatten_lastsumpositive_body_steps + fs_a_dst_flatten_lastsumpositive_body_steps)))))) /\ (((exists fs_u_dst_flatten_lastsumnegative fs_v_dst_flatten_lastsumnegative. ((((exists fs_h_dst_flatten_lastsumnegative_body_start. fs_h_dst_flatten_lastsumnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_flatten_lastsumnegative)) /\ exists fs_q_dst_flatten_lastsumnegative_body_start. fs_u_dst_flatten_lastsumnegative = fs_q_dst_flatten_lastsumnegative_body_start * S ((S (0)) * fs_v_dst_flatten_lastsumnegative) + (0))) /\ ((((exists fs_h_dst_flatten_lastsumnegative_body_terminal. fs_h_dst_flatten_lastsumnegative_body_terminal + S (dst_negative_sum_flatten_lastsum) = S ((S (n)) * fs_v_dst_flatten_lastsumnegative)) /\ exists fs_q_dst_flatten_lastsumnegative_body_terminal. fs_u_dst_flatten_lastsumnegative = fs_q_dst_flatten_lastsumnegative_body_terminal * S ((S (n)) * fs_v_dst_flatten_lastsumnegative) + (dst_negative_sum_flatten_lastsum))) /\ forall fs_i_dst_flatten_lastsumnegative_body_steps. (exists fs_lt_dst_flatten_lastsumnegative_body_steps_bound. fs_lt_dst_flatten_lastsumnegative_body_steps_bound + S fs_i_dst_flatten_lastsumnegative_body_steps = n) -> exists fs_a_dst_flatten_lastsumnegative_body_steps fs_r_dst_flatten_lastsumnegative_body_steps fs_s_dst_flatten_lastsumnegative_body_steps. ((((exists fs_h_dst_flatten_lastsumnegative_body_steps_summand. fs_h_dst_flatten_lastsumnegative_body_steps_summand + S (fs_a_dst_flatten_lastsumnegative_body_steps) = S ((S (fs_i_dst_flatten_lastsumnegative_body_steps)) * dst_negative_scale_flatten_lastsum)) /\ exists fs_q_dst_flatten_lastsumnegative_body_steps_summand. dst_negative_code_flatten_lastsum = fs_q_dst_flatten_lastsumnegative_body_steps_summand * S ((S (fs_i_dst_flatten_lastsumnegative_body_steps)) * dst_negative_scale_flatten_lastsum) + (fs_a_dst_flatten_lastsumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_lastsumnegative_body_steps_partial. fs_h_dst_flatten_lastsumnegative_body_steps_partial + S (fs_r_dst_flatten_lastsumnegative_body_steps) = S ((S (fs_i_dst_flatten_lastsumnegative_body_steps)) * fs_v_dst_flatten_lastsumnegative)) /\ exists fs_q_dst_flatten_lastsumnegative_body_steps_partial. fs_u_dst_flatten_lastsumnegative = fs_q_dst_flatten_lastsumnegative_body_steps_partial * S ((S (fs_i_dst_flatten_lastsumnegative_body_steps)) * fs_v_dst_flatten_lastsumnegative) + (fs_r_dst_flatten_lastsumnegative_body_steps))) /\ ((((exists fs_h_dst_flatten_lastsumnegative_body_steps_successor. fs_h_dst_flatten_lastsumnegative_body_steps_successor + S (fs_s_dst_flatten_lastsumnegative_body_steps) = S ((S (S fs_i_dst_flatten_lastsumnegative_body_steps)) * fs_v_dst_flatten_lastsumnegative)) /\ exists fs_q_dst_flatten_lastsumnegative_body_steps_successor. fs_u_dst_flatten_lastsumnegative = fs_q_dst_flatten_lastsumnegative_body_steps_successor * S ((S (S fs_i_dst_flatten_lastsumnegative_body_steps)) * fs_v_dst_flatten_lastsumnegative) + (fs_s_dst_flatten_lastsumnegative_body_steps))) /\ fs_s_dst_flatten_lastsumnegative_body_steps = fs_r_dst_flatten_lastsumnegative_body_steps + fs_a_dst_flatten_lastsumnegative_body_steps)))))) /\ (exists ge_balance_positive_flatten_lastsumresult ge_balance_negative_flatten_lastsumresult. (((((x1) = 2 * (ge_balance_positive_flatten_lastsumresult) /\ (ge_balance_negative_flatten_lastsumresult) = 0) \/ exists ge_signed_half_flatten_lastsumresultdecode. (((x1) = 2 * ge_signed_half_flatten_lastsumresultdecode + 1 /\ (ge_balance_positive_flatten_lastsumresult) = 0) /\ (ge_balance_negative_flatten_lastsumresult) = S ge_signed_half_flatten_lastsumresultdecode))) /\ ((dst_positive_sum_flatten_lastsum) + ge_balance_negative_flatten_lastsumresult = (dst_negative_sum_flatten_lastsum) + ge_balance_positive_flatten_lastsumresult)))))))))) - 0066
specialize signed_rectangular_row_sums_lookup (F) - 0067
specialize signed_rectangular_row_sums_lookup (R) - 0068
specialize signed_rectangular_row_sums_lookup (0) - 0069
specialize signed_rectangular_row_sums_lookup (n) - 0070
specialize signed_rectangular_row_sums_lookup (1) - 0071
specialize signed_rectangular_row_sums_lookup (S m) - 0072
specialize signed_rectangular_row_sums_lookup (n) - 0073
specialize signed_rectangular_row_sums_lookup (m) - 0074
specialize signed_rectangular_row_sums_lookup (x1) - 0075
apply signed_rectangular_row_sums_lookup - 0076
exact hr - 0077
specialize le_refl (S m) - 0078
apply le_refl - 0079
exact hd_witness_witness_right_left - 0080
have hindex : ((0) + ((n) * (m))) = ((0) + ((1) * (m*n))) - 0081
trans n*m - 0082
specialize zero_add (n*m) - 0083
apply zero_add - 0084
trans m*n - 0085
specialize mul_comm (n) - 0086
specialize mul_comm (m) - 0087
apply mul_comm - 0088
symm - 0089
trans 1*(m*n) - 0090
specialize zero_add (1*(m*n)) - 0091
apply zero_add - 0092
specialize one_mul (m*n) - 0093
apply one_mul - 0094
rewrite hindex at hl - 0095
rewrite hindex at hl - 0096
rewrite hindex at hl - 0097
rewrite hindex at hl - 0098
have hlength : (S m)*n=m*n+n - 0099
specialize mul_succ_left (m) - 0100
specialize mul_succ_left (n) - 0101
apply mul_succ_left - 0102
rewrite hlength - 0103
rewrite hlength - 0104
rewrite hlength - 0105
rewrite hlength - 0106
rewrite hlength - 0107
rewrite hlength - 0108
rewrite hlength - 0109
rewrite hlength - 0110
specialize signed_slice_sum_concatenate (n) - 0111
specialize signed_slice_sum_concatenate (F) - 0112
specialize signed_slice_sum_concatenate (0) - 0113
specialize signed_slice_sum_concatenate (1) - 0114
specialize signed_slice_sum_concatenate (m*n) - 0115
specialize signed_slice_sum_concatenate (x) - 0116
specialize signed_slice_sum_concatenate (x1) - 0117
specialize signed_slice_sum_concatenate (z) - 0118
apply signed_slice_sum_concatenate - 0119
exact hp - 0120
exact hl - 0121
exact hd_witness_witness_right_right