MX0045

signed_support_incidence_column_lookup

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

An actual affine column-slice entry is the same incidence cell after proved natural index commutation.

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 A r s L M T V i j z. (((exists dst_positive_code_column_lookup_gridsource dst_positive_scale_column_lookup_gridsource dst_negative_code_column_lookup_gridsource dst_negative_scale_column_lookup_gridsource. (((A) = (((((dst_positive_code_column_lookup_gridsource) + (dst_positive_scale_column_lookup_gridsource)) * S ((dst_positive_code_column_lookup_gridsource) + (dst_positive_scale_column_lookup_gridsource)) + ((dst_positive_scale_column_lookup_gridsource) + (dst_positive_scale_column_lookup_gridsource))) + (((dst_negative_code_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)) * S ((dst_negative_code_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)) + ((dst_negative_scale_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)))) * S ((((dst_positive_code_column_lookup_gridsource) + (dst_positive_scale_column_lookup_gridsource)) * S ((dst_positive_code_column_lookup_gridsource) + (dst_positive_scale_column_lookup_gridsource)) + ((dst_positive_scale_column_lookup_gridsource) + (dst_positive_scale_column_lookup_gridsource))) + (((dst_negative_code_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)) * S ((dst_negative_code_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)) + ((dst_negative_scale_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)))) + ((((dst_negative_code_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)) * S ((dst_negative_code_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)) + ((dst_negative_scale_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource))) + (((dst_negative_code_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)) * S ((dst_negative_code_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)) + ((dst_negative_scale_column_lookup_gridsource) + (dst_negative_scale_column_lookup_gridsource)))))) /\ (forall dst_index_column_lookup_gridsource. (exists pvs_le_gap_column_lookup_gridsourcedomain. pvs_le_gap_column_lookup_gridsourcedomain + (dst_index_column_lookup_gridsource) = (0)) -> exists dst_positive_column_lookup_gridsource dst_negative_column_lookup_gridsource dst_value_column_lookup_gridsource. ((((exists ff_h_pvs_column_lookup_gridsourceentrypositive. ff_h_pvs_column_lookup_gridsourceentrypositive + S (dst_positive_column_lookup_gridsource) = S ((S (dst_index_column_lookup_gridsource)) * dst_positive_scale_column_lookup_gridsource)) /\ exists ff_q_pvs_column_lookup_gridsourceentrypositive. dst_positive_code_column_lookup_gridsource = ff_q_pvs_column_lookup_gridsourceentrypositive * S ((S (dst_index_column_lookup_gridsource)) * dst_positive_scale_column_lookup_gridsource) + (dst_positive_column_lookup_gridsource))) /\ (((((exists ff_h_pvs_column_lookup_gridsourceentrynegative. ff_h_pvs_column_lookup_gridsourceentrynegative + S (dst_negative_column_lookup_gridsource) = S ((S (dst_index_column_lookup_gridsource)) * dst_negative_scale_column_lookup_gridsource)) /\ exists ff_q_pvs_column_lookup_gridsourceentrynegative. dst_negative_code_column_lookup_gridsource = ff_q_pvs_column_lookup_gridsourceentrynegative * S ((S (dst_index_column_lookup_gridsource)) * dst_negative_scale_column_lookup_gridsource) + (dst_negative_column_lookup_gridsource))) /\ (exists ge_balance_positive_column_lookup_gridsourceentryvalue ge_balance_negative_column_lookup_gridsourceentryvalue. (((((dst_value_column_lookup_gridsource) = 2 * (ge_balance_positive_column_lookup_gridsourceentryvalue) /\ (ge_balance_negative_column_lookup_gridsourceentryvalue) = 0) \/ exists ge_signed_half_column_lookup_gridsourceentryvaluedecode. (((dst_value_column_lookup_gridsource) = 2 * ge_signed_half_column_lookup_gridsourceentryvaluedecode + 1 /\ (ge_balance_positive_column_lookup_gridsourceentryvalue) = 0) /\ (ge_balance_negative_column_lookup_gridsourceentryvalue) = S ge_signed_half_column_lookup_gridsourceentryvaluedecode))) /\ ((dst_positive_column_lookup_gridsource) + ge_balance_negative_column_lookup_gridsourceentryvalue = (dst_negative_column_lookup_gridsource) + ge_balance_positive_column_lookup_gridsourceentryvalue))))))))) /\ (((exists dst_positive_code_column_lookup_gridtable dst_positive_scale_column_lookup_gridtable dst_negative_code_column_lookup_gridtable dst_negative_scale_column_lookup_gridtable. (((T) = (((((dst_positive_code_column_lookup_gridtable) + (dst_positive_scale_column_lookup_gridtable)) * S ((dst_positive_code_column_lookup_gridtable) + (dst_positive_scale_column_lookup_gridtable)) + ((dst_positive_scale_column_lookup_gridtable) + (dst_positive_scale_column_lookup_gridtable))) + (((dst_negative_code_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)) * S ((dst_negative_code_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)) + ((dst_negative_scale_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)))) * S ((((dst_positive_code_column_lookup_gridtable) + (dst_positive_scale_column_lookup_gridtable)) * S ((dst_positive_code_column_lookup_gridtable) + (dst_positive_scale_column_lookup_gridtable)) + ((dst_positive_scale_column_lookup_gridtable) + (dst_positive_scale_column_lookup_gridtable))) + (((dst_negative_code_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)) * S ((dst_negative_code_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)) + ((dst_negative_scale_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)))) + ((((dst_negative_code_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)) * S ((dst_negative_code_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)) + ((dst_negative_scale_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable))) + (((dst_negative_code_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)) * S ((dst_negative_code_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)) + ((dst_negative_scale_column_lookup_gridtable) + (dst_negative_scale_column_lookup_gridtable)))))) /\ (forall dst_index_column_lookup_gridtable. (exists pvs_le_gap_column_lookup_gridtabledomain. pvs_le_gap_column_lookup_gridtabledomain + (dst_index_column_lookup_gridtable) = ((L)*(S (M)))) -> exists dst_positive_column_lookup_gridtable dst_negative_column_lookup_gridtable dst_value_column_lookup_gridtable. ((((exists ff_h_pvs_column_lookup_gridtableentrypositive. ff_h_pvs_column_lookup_gridtableentrypositive + S (dst_positive_column_lookup_gridtable) = S ((S (dst_index_column_lookup_gridtable)) * dst_positive_scale_column_lookup_gridtable)) /\ exists ff_q_pvs_column_lookup_gridtableentrypositive. dst_positive_code_column_lookup_gridtable = ff_q_pvs_column_lookup_gridtableentrypositive * S ((S (dst_index_column_lookup_gridtable)) * dst_positive_scale_column_lookup_gridtable) + (dst_positive_column_lookup_gridtable))) /\ (((((exists ff_h_pvs_column_lookup_gridtableentrynegative. ff_h_pvs_column_lookup_gridtableentrynegative + S (dst_negative_column_lookup_gridtable) = S ((S (dst_index_column_lookup_gridtable)) * dst_negative_scale_column_lookup_gridtable)) /\ exists ff_q_pvs_column_lookup_gridtableentrynegative. dst_negative_code_column_lookup_gridtable = ff_q_pvs_column_lookup_gridtableentrynegative * S ((S (dst_index_column_lookup_gridtable)) * dst_negative_scale_column_lookup_gridtable) + (dst_negative_column_lookup_gridtable))) /\ (exists ge_balance_positive_column_lookup_gridtableentryvalue ge_balance_negative_column_lookup_gridtableentryvalue. (((((dst_value_column_lookup_gridtable) = 2 * (ge_balance_positive_column_lookup_gridtableentryvalue) /\ (ge_balance_negative_column_lookup_gridtableentryvalue) = 0) \/ exists ge_signed_half_column_lookup_gridtableentryvaluedecode. (((dst_value_column_lookup_gridtable) = 2 * ge_signed_half_column_lookup_gridtableentryvaluedecode + 1 /\ (ge_balance_positive_column_lookup_gridtableentryvalue) = 0) /\ (ge_balance_negative_column_lookup_gridtableentryvalue) = S ge_signed_half_column_lookup_gridtableentryvaluedecode))) /\ ((dst_positive_column_lookup_gridtable) + ge_balance_negative_column_lookup_gridtableentryvalue = (dst_negative_column_lookup_gridtable) + ge_balance_positive_column_lookup_gridtableentryvalue))))))))) /\ (forall ssr_grid_row_column_lookup_grid ssr_grid_column_column_lookup_grid ssr_grid_value_column_lookup_grid. (exists pvs_gap_column_lookup_gridrow_bound. pvs_gap_column_lookup_gridrow_bound + S (ssr_grid_row_column_lookup_grid) = (L)) -> (exists pvs_gap_column_lookup_gridcolumn_bound. pvs_gap_column_lookup_gridcolumn_bound + S (ssr_grid_column_column_lookup_grid) = (M)) -> (exists dst_positive_code_column_lookup_gridlookup dst_positive_scale_column_lookup_gridlookup dst_negative_code_column_lookup_gridlookup dst_negative_scale_column_lookup_gridlookup dst_positive_column_lookup_gridlookup dst_negative_column_lookup_gridlookup. (((T) = (((((dst_positive_code_column_lookup_gridlookup) + (dst_positive_scale_column_lookup_gridlookup)) * S ((dst_positive_code_column_lookup_gridlookup) + (dst_positive_scale_column_lookup_gridlookup)) + ((dst_positive_scale_column_lookup_gridlookup) + (dst_positive_scale_column_lookup_gridlookup))) + (((dst_negative_code_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)) * S ((dst_negative_code_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)) + ((dst_negative_scale_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)))) * S ((((dst_positive_code_column_lookup_gridlookup) + (dst_positive_scale_column_lookup_gridlookup)) * S ((dst_positive_code_column_lookup_gridlookup) + (dst_positive_scale_column_lookup_gridlookup)) + ((dst_positive_scale_column_lookup_gridlookup) + (dst_positive_scale_column_lookup_gridlookup))) + (((dst_negative_code_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)) * S ((dst_negative_code_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)) + ((dst_negative_scale_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)))) + ((((dst_negative_code_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)) * S ((dst_negative_code_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)) + ((dst_negative_scale_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup))) + (((dst_negative_code_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)) * S ((dst_negative_code_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)) + ((dst_negative_scale_column_lookup_gridlookup) + (dst_negative_scale_column_lookup_gridlookup)))))) /\ (((((exists ff_h_pvs_column_lookup_gridlookuppositive. ff_h_pvs_column_lookup_gridlookuppositive + S (dst_positive_column_lookup_gridlookup) = S ((S (((S (M))*(ssr_grid_row_column_lookup_grid)+(ssr_grid_column_column_lookup_grid)))) * dst_positive_scale_column_lookup_gridlookup)) /\ exists ff_q_pvs_column_lookup_gridlookuppositive. dst_positive_code_column_lookup_gridlookup = ff_q_pvs_column_lookup_gridlookuppositive * S ((S (((S (M))*(ssr_grid_row_column_lookup_grid)+(ssr_grid_column_column_lookup_grid)))) * dst_positive_scale_column_lookup_gridlookup) + (dst_positive_column_lookup_gridlookup))) /\ (((((exists ff_h_pvs_column_lookup_gridlookupnegative. ff_h_pvs_column_lookup_gridlookupnegative + S (dst_negative_column_lookup_gridlookup) = S ((S (((S (M))*(ssr_grid_row_column_lookup_grid)+(ssr_grid_column_column_lookup_grid)))) * dst_negative_scale_column_lookup_gridlookup)) /\ exists ff_q_pvs_column_lookup_gridlookupnegative. dst_negative_code_column_lookup_gridlookup = ff_q_pvs_column_lookup_gridlookupnegative * S ((S (((S (M))*(ssr_grid_row_column_lookup_grid)+(ssr_grid_column_column_lookup_grid)))) * dst_negative_scale_column_lookup_gridlookup) + (dst_negative_column_lookup_gridlookup))) /\ (exists ge_balance_positive_column_lookup_gridlookupvalue ge_balance_negative_column_lookup_gridlookupvalue. (((((ssr_grid_value_column_lookup_grid) = 2 * (ge_balance_positive_column_lookup_gridlookupvalue) /\ (ge_balance_negative_column_lookup_gridlookupvalue) = 0) \/ exists ge_signed_half_column_lookup_gridlookupvaluedecode. (((ssr_grid_value_column_lookup_grid) = 2 * ge_signed_half_column_lookup_gridlookupvaluedecode + 1 /\ (ge_balance_positive_column_lookup_gridlookupvalue) = 0) /\ (ge_balance_negative_column_lookup_gridlookupvalue) = S ge_signed_half_column_lookup_gridlookupvaluedecode))) /\ ((dst_positive_column_lookup_gridlookup) + ge_balance_negative_column_lookup_gridlookupvalue = (dst_negative_column_lookup_gridlookup) + ge_balance_positive_column_lookup_gridlookupvalue))))))))) -> (exists ssr_entry_value_column_lookup_gridentry ssr_entry_image_column_lookup_gridentry. ((exists dst_positive_code_column_lookup_gridentrysource dst_positive_scale_column_lookup_gridentrysource dst_negative_code_column_lookup_gridentrysource dst_negative_scale_column_lookup_gridentrysource dst_positive_column_lookup_gridentrysource dst_negative_column_lookup_gridentrysource. (((A) = (((((dst_positive_code_column_lookup_gridentrysource) + (dst_positive_scale_column_lookup_gridentrysource)) * S ((dst_positive_code_column_lookup_gridentrysource) + (dst_positive_scale_column_lookup_gridentrysource)) + ((dst_positive_scale_column_lookup_gridentrysource) + (dst_positive_scale_column_lookup_gridentrysource))) + (((dst_negative_code_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)) * S ((dst_negative_code_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)) + ((dst_negative_scale_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)))) * S ((((dst_positive_code_column_lookup_gridentrysource) + (dst_positive_scale_column_lookup_gridentrysource)) * S ((dst_positive_code_column_lookup_gridentrysource) + (dst_positive_scale_column_lookup_gridentrysource)) + ((dst_positive_scale_column_lookup_gridentrysource) + (dst_positive_scale_column_lookup_gridentrysource))) + (((dst_negative_code_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)) * S ((dst_negative_code_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)) + ((dst_negative_scale_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)))) + ((((dst_negative_code_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)) * S ((dst_negative_code_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)) + ((dst_negative_scale_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource))) + (((dst_negative_code_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)) * S ((dst_negative_code_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)) + ((dst_negative_scale_column_lookup_gridentrysource) + (dst_negative_scale_column_lookup_gridentrysource)))))) /\ (((((exists ff_h_pvs_column_lookup_gridentrysourcepositive. ff_h_pvs_column_lookup_gridentrysourcepositive + S (dst_positive_column_lookup_gridentrysource) = S ((S (ssr_grid_row_column_lookup_grid)) * dst_positive_scale_column_lookup_gridentrysource)) /\ exists ff_q_pvs_column_lookup_gridentrysourcepositive. dst_positive_code_column_lookup_gridentrysource = ff_q_pvs_column_lookup_gridentrysourcepositive * S ((S (ssr_grid_row_column_lookup_grid)) * dst_positive_scale_column_lookup_gridentrysource) + (dst_positive_column_lookup_gridentrysource))) /\ (((((exists ff_h_pvs_column_lookup_gridentrysourcenegative. ff_h_pvs_column_lookup_gridentrysourcenegative + S (dst_negative_column_lookup_gridentrysource) = S ((S (ssr_grid_row_column_lookup_grid)) * dst_negative_scale_column_lookup_gridentrysource)) /\ exists ff_q_pvs_column_lookup_gridentrysourcenegative. dst_negative_code_column_lookup_gridentrysource = ff_q_pvs_column_lookup_gridentrysourcenegative * S ((S (ssr_grid_row_column_lookup_grid)) * dst_negative_scale_column_lookup_gridentrysource) + (dst_negative_column_lookup_gridentrysource))) /\ (exists ge_balance_positive_column_lookup_gridentrysourcevalue ge_balance_negative_column_lookup_gridentrysourcevalue. (((((ssr_entry_value_column_lookup_gridentry) = 2 * (ge_balance_positive_column_lookup_gridentrysourcevalue) /\ (ge_balance_negative_column_lookup_gridentrysourcevalue) = 0) \/ exists ge_signed_half_column_lookup_gridentrysourcevaluedecode. (((ssr_entry_value_column_lookup_gridentry) = 2 * ge_signed_half_column_lookup_gridentrysourcevaluedecode + 1 /\ (ge_balance_positive_column_lookup_gridentrysourcevalue) = 0) /\ (ge_balance_negative_column_lookup_gridentrysourcevalue) = S ge_signed_half_column_lookup_gridentrysourcevaluedecode))) /\ ((dst_positive_column_lookup_gridentrysource) + ge_balance_negative_column_lookup_gridentrysourcevalue = (dst_negative_column_lookup_gridentrysource) + ge_balance_positive_column_lookup_gridentrysourcevalue))))))))) /\ (((((exists ff_h_pvs_column_lookup_gridentrymap. ff_h_pvs_column_lookup_gridentrymap + S (ssr_entry_image_column_lookup_gridentry) = S ((S (ssr_grid_row_column_lookup_grid)) * s)) /\ exists ff_q_pvs_column_lookup_gridentrymap. r = ff_q_pvs_column_lookup_gridentrymap * S ((S (ssr_grid_row_column_lookup_grid)) * s) + (ssr_entry_image_column_lookup_gridentry))) /\ (((((ssr_grid_column_column_lookup_grid)=(ssr_entry_image_column_lookup_gridentry)) /\ ((ssr_grid_value_column_lookup_grid)=(ssr_entry_value_column_lookup_gridentry)))) \/ (((~((ssr_grid_column_column_lookup_grid)=(ssr_entry_image_column_lookup_gridentry))) /\ ((ssr_grid_value_column_lookup_grid)=0))))))))))))) -> (((exists dst_positive_code_column_lookup_slicesource_table dst_positive_scale_column_lookup_slicesource_table dst_negative_code_column_lookup_slicesource_table dst_negative_scale_column_lookup_slicesource_table. (((T) = (((((dst_positive_code_column_lookup_slicesource_table) + (dst_positive_scale_column_lookup_slicesource_table)) * S ((dst_positive_code_column_lookup_slicesource_table) + (dst_positive_scale_column_lookup_slicesource_table)) + ((dst_positive_scale_column_lookup_slicesource_table) + (dst_positive_scale_column_lookup_slicesource_table))) + (((dst_negative_code_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)) * S ((dst_negative_code_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)) + ((dst_negative_scale_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)))) * S ((((dst_positive_code_column_lookup_slicesource_table) + (dst_positive_scale_column_lookup_slicesource_table)) * S ((dst_positive_code_column_lookup_slicesource_table) + (dst_positive_scale_column_lookup_slicesource_table)) + ((dst_positive_scale_column_lookup_slicesource_table) + (dst_positive_scale_column_lookup_slicesource_table))) + (((dst_negative_code_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)) * S ((dst_negative_code_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)) + ((dst_negative_scale_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)))) + ((((dst_negative_code_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)) * S ((dst_negative_code_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)) + ((dst_negative_scale_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table))) + (((dst_negative_code_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)) * S ((dst_negative_code_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)) + ((dst_negative_scale_column_lookup_slicesource_table) + (dst_negative_scale_column_lookup_slicesource_table)))))) /\ (forall dst_index_column_lookup_slicesource_table. (exists pvs_le_gap_column_lookup_slicesource_tabledomain. pvs_le_gap_column_lookup_slicesource_tabledomain + (dst_index_column_lookup_slicesource_table) = (0)) -> exists dst_positive_column_lookup_slicesource_table dst_negative_column_lookup_slicesource_table dst_value_column_lookup_slicesource_table. ((((exists ff_h_pvs_column_lookup_slicesource_tableentrypositive. ff_h_pvs_column_lookup_slicesource_tableentrypositive + S (dst_positive_column_lookup_slicesource_table) = S ((S (dst_index_column_lookup_slicesource_table)) * dst_positive_scale_column_lookup_slicesource_table)) /\ exists ff_q_pvs_column_lookup_slicesource_tableentrypositive. dst_positive_code_column_lookup_slicesource_table = ff_q_pvs_column_lookup_slicesource_tableentrypositive * S ((S (dst_index_column_lookup_slicesource_table)) * dst_positive_scale_column_lookup_slicesource_table) + (dst_positive_column_lookup_slicesource_table))) /\ (((((exists ff_h_pvs_column_lookup_slicesource_tableentrynegative. ff_h_pvs_column_lookup_slicesource_tableentrynegative + S (dst_negative_column_lookup_slicesource_table) = S ((S (dst_index_column_lookup_slicesource_table)) * dst_negative_scale_column_lookup_slicesource_table)) /\ exists ff_q_pvs_column_lookup_slicesource_tableentrynegative. dst_negative_code_column_lookup_slicesource_table = ff_q_pvs_column_lookup_slicesource_tableentrynegative * S ((S (dst_index_column_lookup_slicesource_table)) * dst_negative_scale_column_lookup_slicesource_table) + (dst_negative_column_lookup_slicesource_table))) /\ (exists ge_balance_positive_column_lookup_slicesource_tableentryvalue ge_balance_negative_column_lookup_slicesource_tableentryvalue. (((((dst_value_column_lookup_slicesource_table) = 2 * (ge_balance_positive_column_lookup_slicesource_tableentryvalue) /\ (ge_balance_negative_column_lookup_slicesource_tableentryvalue) = 0) \/ exists ge_signed_half_column_lookup_slicesource_tableentryvaluedecode. (((dst_value_column_lookup_slicesource_table) = 2 * ge_signed_half_column_lookup_slicesource_tableentryvaluedecode + 1 /\ (ge_balance_positive_column_lookup_slicesource_tableentryvalue) = 0) /\ (ge_balance_negative_column_lookup_slicesource_tableentryvalue) = S ge_signed_half_column_lookup_slicesource_tableentryvaluedecode))) /\ ((dst_positive_column_lookup_slicesource_table) + ge_balance_negative_column_lookup_slicesource_tableentryvalue = (dst_negative_column_lookup_slicesource_table) + ge_balance_positive_column_lookup_slicesource_tableentryvalue))))))))) /\ (((exists dst_positive_code_column_lookup_sliceoutput_table dst_positive_scale_column_lookup_sliceoutput_table dst_negative_code_column_lookup_sliceoutput_table dst_negative_scale_column_lookup_sliceoutput_table. (((V) = (((((dst_positive_code_column_lookup_sliceoutput_table) + (dst_positive_scale_column_lookup_sliceoutput_table)) * S ((dst_positive_code_column_lookup_sliceoutput_table) + (dst_positive_scale_column_lookup_sliceoutput_table)) + ((dst_positive_scale_column_lookup_sliceoutput_table) + (dst_positive_scale_column_lookup_sliceoutput_table))) + (((dst_negative_code_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)) * S ((dst_negative_code_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)) + ((dst_negative_scale_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)))) * S ((((dst_positive_code_column_lookup_sliceoutput_table) + (dst_positive_scale_column_lookup_sliceoutput_table)) * S ((dst_positive_code_column_lookup_sliceoutput_table) + (dst_positive_scale_column_lookup_sliceoutput_table)) + ((dst_positive_scale_column_lookup_sliceoutput_table) + (dst_positive_scale_column_lookup_sliceoutput_table))) + (((dst_negative_code_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)) * S ((dst_negative_code_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)) + ((dst_negative_scale_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)))) + ((((dst_negative_code_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)) * S ((dst_negative_code_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)) + ((dst_negative_scale_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table))) + (((dst_negative_code_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)) * S ((dst_negative_code_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)) + ((dst_negative_scale_column_lookup_sliceoutput_table) + (dst_negative_scale_column_lookup_sliceoutput_table)))))) /\ (forall dst_index_column_lookup_sliceoutput_table. (exists pvs_le_gap_column_lookup_sliceoutput_tabledomain. pvs_le_gap_column_lookup_sliceoutput_tabledomain + (dst_index_column_lookup_sliceoutput_table) = (L)) -> exists dst_positive_column_lookup_sliceoutput_table dst_negative_column_lookup_sliceoutput_table dst_value_column_lookup_sliceoutput_table. ((((exists ff_h_pvs_column_lookup_sliceoutput_tableentrypositive. ff_h_pvs_column_lookup_sliceoutput_tableentrypositive + S (dst_positive_column_lookup_sliceoutput_table) = S ((S (dst_index_column_lookup_sliceoutput_table)) * dst_positive_scale_column_lookup_sliceoutput_table)) /\ exists ff_q_pvs_column_lookup_sliceoutput_tableentrypositive. dst_positive_code_column_lookup_sliceoutput_table = ff_q_pvs_column_lookup_sliceoutput_tableentrypositive * S ((S (dst_index_column_lookup_sliceoutput_table)) * dst_positive_scale_column_lookup_sliceoutput_table) + (dst_positive_column_lookup_sliceoutput_table))) /\ (((((exists ff_h_pvs_column_lookup_sliceoutput_tableentrynegative. ff_h_pvs_column_lookup_sliceoutput_tableentrynegative + S (dst_negative_column_lookup_sliceoutput_table) = S ((S (dst_index_column_lookup_sliceoutput_table)) * dst_negative_scale_column_lookup_sliceoutput_table)) /\ exists ff_q_pvs_column_lookup_sliceoutput_tableentrynegative. dst_negative_code_column_lookup_sliceoutput_table = ff_q_pvs_column_lookup_sliceoutput_tableentrynegative * S ((S (dst_index_column_lookup_sliceoutput_table)) * dst_negative_scale_column_lookup_sliceoutput_table) + (dst_negative_column_lookup_sliceoutput_table))) /\ (exists ge_balance_positive_column_lookup_sliceoutput_tableentryvalue ge_balance_negative_column_lookup_sliceoutput_tableentryvalue. (((((dst_value_column_lookup_sliceoutput_table) = 2 * (ge_balance_positive_column_lookup_sliceoutput_tableentryvalue) /\ (ge_balance_negative_column_lookup_sliceoutput_tableentryvalue) = 0) \/ exists ge_signed_half_column_lookup_sliceoutput_tableentryvaluedecode. (((dst_value_column_lookup_sliceoutput_table) = 2 * ge_signed_half_column_lookup_sliceoutput_tableentryvaluedecode + 1 /\ (ge_balance_positive_column_lookup_sliceoutput_tableentryvalue) = 0) /\ (ge_balance_negative_column_lookup_sliceoutput_tableentryvalue) = S ge_signed_half_column_lookup_sliceoutput_tableentryvaluedecode))) /\ ((dst_positive_column_lookup_sliceoutput_table) + ge_balance_negative_column_lookup_sliceoutput_tableentryvalue = (dst_negative_column_lookup_sliceoutput_table) + ge_balance_positive_column_lookup_sliceoutput_tableentryvalue))))))))) /\ (forall srs_index_column_lookup_slice. (exists pvs_gap_column_lookup_slicebound. pvs_gap_column_lookup_slicebound + S (srs_index_column_lookup_slice) = (L)) -> exists srs_value_column_lookup_slice. (((exists dst_positive_code_column_lookup_sliceentrysource dst_positive_scale_column_lookup_sliceentrysource dst_negative_code_column_lookup_sliceentrysource dst_negative_scale_column_lookup_sliceentrysource dst_positive_column_lookup_sliceentrysource dst_negative_column_lookup_sliceentrysource. (((T) = (((((dst_positive_code_column_lookup_sliceentrysource) + (dst_positive_scale_column_lookup_sliceentrysource)) * S ((dst_positive_code_column_lookup_sliceentrysource) + (dst_positive_scale_column_lookup_sliceentrysource)) + ((dst_positive_scale_column_lookup_sliceentrysource) + (dst_positive_scale_column_lookup_sliceentrysource))) + (((dst_negative_code_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)) * S ((dst_negative_code_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)) + ((dst_negative_scale_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)))) * S ((((dst_positive_code_column_lookup_sliceentrysource) + (dst_positive_scale_column_lookup_sliceentrysource)) * S ((dst_positive_code_column_lookup_sliceentrysource) + (dst_positive_scale_column_lookup_sliceentrysource)) + ((dst_positive_scale_column_lookup_sliceentrysource) + (dst_positive_scale_column_lookup_sliceentrysource))) + (((dst_negative_code_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)) * S ((dst_negative_code_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)) + ((dst_negative_scale_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)))) + ((((dst_negative_code_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)) * S ((dst_negative_code_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)) + ((dst_negative_scale_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource))) + (((dst_negative_code_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)) * S ((dst_negative_code_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)) + ((dst_negative_scale_column_lookup_sliceentrysource) + (dst_negative_scale_column_lookup_sliceentrysource)))))) /\ (((((exists ff_h_pvs_column_lookup_sliceentrysourcepositive. ff_h_pvs_column_lookup_sliceentrysourcepositive + S (dst_positive_column_lookup_sliceentrysource) = S ((S (((((0) + ((1) * (j)))) + ((S M) * (srs_index_column_lookup_slice))))) * dst_positive_scale_column_lookup_sliceentrysource)) /\ exists ff_q_pvs_column_lookup_sliceentrysourcepositive. dst_positive_code_column_lookup_sliceentrysource = ff_q_pvs_column_lookup_sliceentrysourcepositive * S ((S (((((0) + ((1) * (j)))) + ((S M) * (srs_index_column_lookup_slice))))) * dst_positive_scale_column_lookup_sliceentrysource) + (dst_positive_column_lookup_sliceentrysource))) /\ (((((exists ff_h_pvs_column_lookup_sliceentrysourcenegative. ff_h_pvs_column_lookup_sliceentrysourcenegative + S (dst_negative_column_lookup_sliceentrysource) = S ((S (((((0) + ((1) * (j)))) + ((S M) * (srs_index_column_lookup_slice))))) * dst_negative_scale_column_lookup_sliceentrysource)) /\ exists ff_q_pvs_column_lookup_sliceentrysourcenegative. dst_negative_code_column_lookup_sliceentrysource = ff_q_pvs_column_lookup_sliceentrysourcenegative * S ((S (((((0) + ((1) * (j)))) + ((S M) * (srs_index_column_lookup_slice))))) * dst_negative_scale_column_lookup_sliceentrysource) + (dst_negative_column_lookup_sliceentrysource))) /\ (exists ge_balance_positive_column_lookup_sliceentrysourcevalue ge_balance_negative_column_lookup_sliceentrysourcevalue. (((((srs_value_column_lookup_slice) = 2 * (ge_balance_positive_column_lookup_sliceentrysourcevalue) /\ (ge_balance_negative_column_lookup_sliceentrysourcevalue) = 0) \/ exists ge_signed_half_column_lookup_sliceentrysourcevaluedecode. (((srs_value_column_lookup_slice) = 2 * ge_signed_half_column_lookup_sliceentrysourcevaluedecode + 1 /\ (ge_balance_positive_column_lookup_sliceentrysourcevalue) = 0) /\ (ge_balance_negative_column_lookup_sliceentrysourcevalue) = S ge_signed_half_column_lookup_sliceentrysourcevaluedecode))) /\ ((dst_positive_column_lookup_sliceentrysource) + ge_balance_negative_column_lookup_sliceentrysourcevalue = (dst_negative_column_lookup_sliceentrysource) + ge_balance_positive_column_lookup_sliceentrysourcevalue))))))))) /\ (exists dst_positive_code_column_lookup_sliceentryoutput dst_positive_scale_column_lookup_sliceentryoutput dst_negative_code_column_lookup_sliceentryoutput dst_negative_scale_column_lookup_sliceentryoutput dst_positive_column_lookup_sliceentryoutput dst_negative_column_lookup_sliceentryoutput. (((V) = (((((dst_positive_code_column_lookup_sliceentryoutput) + (dst_positive_scale_column_lookup_sliceentryoutput)) * S ((dst_positive_code_column_lookup_sliceentryoutput) + (dst_positive_scale_column_lookup_sliceentryoutput)) + ((dst_positive_scale_column_lookup_sliceentryoutput) + (dst_positive_scale_column_lookup_sliceentryoutput))) + (((dst_negative_code_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)) * S ((dst_negative_code_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)) + ((dst_negative_scale_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)))) * S ((((dst_positive_code_column_lookup_sliceentryoutput) + (dst_positive_scale_column_lookup_sliceentryoutput)) * S ((dst_positive_code_column_lookup_sliceentryoutput) + (dst_positive_scale_column_lookup_sliceentryoutput)) + ((dst_positive_scale_column_lookup_sliceentryoutput) + (dst_positive_scale_column_lookup_sliceentryoutput))) + (((dst_negative_code_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)) * S ((dst_negative_code_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)) + ((dst_negative_scale_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)))) + ((((dst_negative_code_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)) * S ((dst_negative_code_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)) + ((dst_negative_scale_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput))) + (((dst_negative_code_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)) * S ((dst_negative_code_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)) + ((dst_negative_scale_column_lookup_sliceentryoutput) + (dst_negative_scale_column_lookup_sliceentryoutput)))))) /\ (((((exists ff_h_pvs_column_lookup_sliceentryoutputpositive. ff_h_pvs_column_lookup_sliceentryoutputpositive + S (dst_positive_column_lookup_sliceentryoutput) = S ((S (srs_index_column_lookup_slice)) * dst_positive_scale_column_lookup_sliceentryoutput)) /\ exists ff_q_pvs_column_lookup_sliceentryoutputpositive. dst_positive_code_column_lookup_sliceentryoutput = ff_q_pvs_column_lookup_sliceentryoutputpositive * S ((S (srs_index_column_lookup_slice)) * dst_positive_scale_column_lookup_sliceentryoutput) + (dst_positive_column_lookup_sliceentryoutput))) /\ (((((exists ff_h_pvs_column_lookup_sliceentryoutputnegative. ff_h_pvs_column_lookup_sliceentryoutputnegative + S (dst_negative_column_lookup_sliceentryoutput) = S ((S (srs_index_column_lookup_slice)) * dst_negative_scale_column_lookup_sliceentryoutput)) /\ exists ff_q_pvs_column_lookup_sliceentryoutputnegative. dst_negative_code_column_lookup_sliceentryoutput = ff_q_pvs_column_lookup_sliceentryoutputnegative * S ((S (srs_index_column_lookup_slice)) * dst_negative_scale_column_lookup_sliceentryoutput) + (dst_negative_column_lookup_sliceentryoutput))) /\ (exists ge_balance_positive_column_lookup_sliceentryoutputvalue ge_balance_negative_column_lookup_sliceentryoutputvalue. (((((srs_value_column_lookup_slice) = 2 * (ge_balance_positive_column_lookup_sliceentryoutputvalue) /\ (ge_balance_negative_column_lookup_sliceentryoutputvalue) = 0) \/ exists ge_signed_half_column_lookup_sliceentryoutputvaluedecode. (((srs_value_column_lookup_slice) = 2 * ge_signed_half_column_lookup_sliceentryoutputvaluedecode + 1 /\ (ge_balance_positive_column_lookup_sliceentryoutputvalue) = 0) /\ (ge_balance_negative_column_lookup_sliceentryoutputvalue) = S ge_signed_half_column_lookup_sliceentryoutputvaluedecode))) /\ ((dst_positive_column_lookup_sliceentryoutput) + ge_balance_negative_column_lookup_sliceentryoutputvalue = (dst_negative_column_lookup_sliceentryoutput) + ge_balance_positive_column_lookup_sliceentryoutputvalue)))))))))))))))) -> (exists pvs_gap_column_lookup_row. pvs_gap_column_lookup_row + S (i) = (L)) -> (exists pvs_gap_column_lookup_bound. pvs_gap_column_lookup_bound + S (j) = (M)) -> (exists dst_positive_code_column_lookup_value dst_positive_scale_column_lookup_value dst_negative_code_column_lookup_value dst_negative_scale_column_lookup_value dst_positive_column_lookup_value dst_negative_column_lookup_value. (((V) = (((((dst_positive_code_column_lookup_value) + (dst_positive_scale_column_lookup_value)) * S ((dst_positive_code_column_lookup_value) + (dst_positive_scale_column_lookup_value)) + ((dst_positive_scale_column_lookup_value) + (dst_positive_scale_column_lookup_value))) + (((dst_negative_code_column_lookup_value) + (dst_negative_scale_column_lookup_value)) * S ((dst_negative_code_column_lookup_value) + (dst_negative_scale_column_lookup_value)) + ((dst_negative_scale_column_lookup_value) + (dst_negative_scale_column_lookup_value)))) * S ((((dst_positive_code_column_lookup_value) + (dst_positive_scale_column_lookup_value)) * S ((dst_positive_code_column_lookup_value) + (dst_positive_scale_column_lookup_value)) + ((dst_positive_scale_column_lookup_value) + (dst_positive_scale_column_lookup_value))) + (((dst_negative_code_column_lookup_value) + (dst_negative_scale_column_lookup_value)) * S ((dst_negative_code_column_lookup_value) + (dst_negative_scale_column_lookup_value)) + ((dst_negative_scale_column_lookup_value) + (dst_negative_scale_column_lookup_value)))) + ((((dst_negative_code_column_lookup_value) + (dst_negative_scale_column_lookup_value)) * S ((dst_negative_code_column_lookup_value) + (dst_negative_scale_column_lookup_value)) + ((dst_negative_scale_column_lookup_value) + (dst_negative_scale_column_lookup_value))) + (((dst_negative_code_column_lookup_value) + (dst_negative_scale_column_lookup_value)) * S ((dst_negative_code_column_lookup_value) + (dst_negative_scale_column_lookup_value)) + ((dst_negative_scale_column_lookup_value) + (dst_negative_scale_column_lookup_value)))))) /\ (((((exists ff_h_pvs_column_lookup_valuepositive. ff_h_pvs_column_lookup_valuepositive + S (dst_positive_column_lookup_value) = S ((S (i)) * dst_positive_scale_column_lookup_value)) /\ exists ff_q_pvs_column_lookup_valuepositive. dst_positive_code_column_lookup_value = ff_q_pvs_column_lookup_valuepositive * S ((S (i)) * dst_positive_scale_column_lookup_value) + (dst_positive_column_lookup_value))) /\ (((((exists ff_h_pvs_column_lookup_valuenegative. ff_h_pvs_column_lookup_valuenegative + S (dst_negative_column_lookup_value) = S ((S (i)) * dst_negative_scale_column_lookup_value)) /\ exists ff_q_pvs_column_lookup_valuenegative. dst_negative_code_column_lookup_value = ff_q_pvs_column_lookup_valuenegative * S ((S (i)) * dst_negative_scale_column_lookup_value) + (dst_negative_column_lookup_value))) /\ (exists ge_balance_positive_column_lookup_valuevalue ge_balance_negative_column_lookup_valuevalue. (((((z) = 2 * (ge_balance_positive_column_lookup_valuevalue) /\ (ge_balance_negative_column_lookup_valuevalue) = 0) \/ exists ge_signed_half_column_lookup_valuevaluedecode. (((z) = 2 * ge_signed_half_column_lookup_valuevaluedecode + 1 /\ (ge_balance_positive_column_lookup_valuevalue) = 0) /\ (ge_balance_negative_column_lookup_valuevalue) = S ge_signed_half_column_lookup_valuevaluedecode))) /\ ((dst_positive_column_lookup_value) + ge_balance_negative_column_lookup_valuevalue = (dst_negative_column_lookup_value) + ge_balance_positive_column_lookup_valuevalue))))))))) -> (exists ssr_entry_value_column_lookup_entry ssr_entry_image_column_lookup_entry. ((exists dst_positive_code_column_lookup_entrysource dst_positive_scale_column_lookup_entrysource dst_negative_code_column_lookup_entrysource dst_negative_scale_column_lookup_entrysource dst_positive_column_lookup_entrysource dst_negative_column_lookup_entrysource. (((A) = (((((dst_positive_code_column_lookup_entrysource) + (dst_positive_scale_column_lookup_entrysource)) * S ((dst_positive_code_column_lookup_entrysource) + (dst_positive_scale_column_lookup_entrysource)) + ((dst_positive_scale_column_lookup_entrysource) + (dst_positive_scale_column_lookup_entrysource))) + (((dst_negative_code_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)) * S ((dst_negative_code_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)) + ((dst_negative_scale_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)))) * S ((((dst_positive_code_column_lookup_entrysource) + (dst_positive_scale_column_lookup_entrysource)) * S ((dst_positive_code_column_lookup_entrysource) + (dst_positive_scale_column_lookup_entrysource)) + ((dst_positive_scale_column_lookup_entrysource) + (dst_positive_scale_column_lookup_entrysource))) + (((dst_negative_code_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)) * S ((dst_negative_code_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)) + ((dst_negative_scale_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)))) + ((((dst_negative_code_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)) * S ((dst_negative_code_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)) + ((dst_negative_scale_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource))) + (((dst_negative_code_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)) * S ((dst_negative_code_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)) + ((dst_negative_scale_column_lookup_entrysource) + (dst_negative_scale_column_lookup_entrysource)))))) /\ (((((exists ff_h_pvs_column_lookup_entrysourcepositive. ff_h_pvs_column_lookup_entrysourcepositive + S (dst_positive_column_lookup_entrysource) = S ((S (i)) * dst_positive_scale_column_lookup_entrysource)) /\ exists ff_q_pvs_column_lookup_entrysourcepositive. dst_positive_code_column_lookup_entrysource = ff_q_pvs_column_lookup_entrysourcepositive * S ((S (i)) * dst_positive_scale_column_lookup_entrysource) + (dst_positive_column_lookup_entrysource))) /\ (((((exists ff_h_pvs_column_lookup_entrysourcenegative. ff_h_pvs_column_lookup_entrysourcenegative + S (dst_negative_column_lookup_entrysource) = S ((S (i)) * dst_negative_scale_column_lookup_entrysource)) /\ exists ff_q_pvs_column_lookup_entrysourcenegative. dst_negative_code_column_lookup_entrysource = ff_q_pvs_column_lookup_entrysourcenegative * S ((S (i)) * dst_negative_scale_column_lookup_entrysource) + (dst_negative_column_lookup_entrysource))) /\ (exists ge_balance_positive_column_lookup_entrysourcevalue ge_balance_negative_column_lookup_entrysourcevalue. (((((ssr_entry_value_column_lookup_entry) = 2 * (ge_balance_positive_column_lookup_entrysourcevalue) /\ (ge_balance_negative_column_lookup_entrysourcevalue) = 0) \/ exists ge_signed_half_column_lookup_entrysourcevaluedecode. (((ssr_entry_value_column_lookup_entry) = 2 * ge_signed_half_column_lookup_entrysourcevaluedecode + 1 /\ (ge_balance_positive_column_lookup_entrysourcevalue) = 0) /\ (ge_balance_negative_column_lookup_entrysourcevalue) = S ge_signed_half_column_lookup_entrysourcevaluedecode))) /\ ((dst_positive_column_lookup_entrysource) + ge_balance_negative_column_lookup_entrysourcevalue = (dst_negative_column_lookup_entrysource) + ge_balance_positive_column_lookup_entrysourcevalue))))))))) /\ (((((exists ff_h_pvs_column_lookup_entrymap. ff_h_pvs_column_lookup_entrymap + S (ssr_entry_image_column_lookup_entry) = S ((S (i)) * s)) /\ exists ff_q_pvs_column_lookup_entrymap. r = ff_q_pvs_column_lookup_entrymap * S ((S (i)) * s) + (ssr_entry_image_column_lookup_entry))) /\ (((((j)=(ssr_entry_image_column_lookup_entry)) /\ ((z)=(ssr_entry_value_column_lookup_entry)))) \/ (((~((j)=(ssr_entry_image_column_lookup_entry))) /\ ((z)=0))))))))

Constructive proof overview

Generated structural guide

An actual affine column-slice entry is the same incidence cell after proved natural index commutation.

The unchanged tactic script uses 4 declared prerequisites and contains 46 exact native proof lines.

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

Proof neighborhood

Direct dependencies

signed_rectangular_slice_lookup Alpha theorem; checked-use authorized zero_add Stable theorem; checked-use authorized one_mul Stable theorem; checked-use authorized add_comm Stable theorem; checked-use authorized

Direct dependents

Formal native tactic body

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

Read the argument

Proof checkpoints

46 script commands · 8 reading checkpoints · 2 local claims

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

Long local formulas use this family’s existing definitions. Each new abbreviation was expanded back to the identical native formula, including its free-variable context. The original edition is preserved below.

01Fix variables and assumptionsL1–10

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

  1. L1
    intro A
  2. L2
    intro r
  3. L3
    intro s
  4. L4
    intro L
  5. L5
    intro M
  6. L6
    intro T
  7. L7
    intro V
  8. L8
    intro i
  9. L9
    intro j
  10. L10
    intro z
02Fix variables and assumptionsL11–15

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

  1. L11
    intro hg
  2. L12
    intro hv
  3. L13
    intro hi
  4. L14
    intro hj
  5. L15
    intro hz
03Separate the logical casesL16–17

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

  1. L16
    cases hg
  2. L17
    cases hg_right
04Use earlier factsL18–23

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

  1. L18
    specialize hg_right_right (i)
  2. L19
    specialize hg_right_right (j)
  3. L20
    specialize hg_right_right (z)
  4. L21
    apply hg_right_right
  5. L22
    exact hi
  6. L23
    exact hj
05Establish hsL24–33

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed rectangular slice lookup.

  1. L24
    have hs : ArithAt(T,0 + 1 · j + S M · i,z)Definitions: ArithAt
  2. L25
    specialize signed_rectangular_slice_lookup (T)
  3. L26
    specialize signed_rectangular_slice_lookup (V)
  4. L27
    specialize signed_rectangular_slice_lookup (((0) + ((1) * (j))))
  5. L28
    specialize signed_rectangular_slice_lookup (S M)
  6. L29
    specialize signed_rectangular_slice_lookup (L)
  7. L30
    specialize signed_rectangular_slice_lookup (i)
  8. L31
    specialize signed_rectangular_slice_lookup (z)
  9. L32
    apply signed_rectangular_slice_lookup
  10. L33
    exact hv
06Use earlier factsL34–35

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

  1. L34
    exact hi
  2. L35
    exact hz
07Establish heL36–45

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add comm.

  1. L36
    have he : ((((0) + ((1) * (j)))) + ((S M) * (i)))=((S (M))*(i)+(j))
  2. L37
    specialize zero_add (1*j)
  3. L38
    rewrite zero_add
  4. L39
    specialize one_mul (j)
  5. L40
    rewrite one_mul
  6. L41
    apply add_comm
  7. L42
    rewrite he at hs
  8. L43
    rewrite he at hs
  9. L44
    rewrite he at hs
  10. L45
    rewrite he at hs
08Use earlier factsL46–46

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

  1. L46
    exact hs

Library-wide reading audit

Original exact command ledger · 46 lines
  1. 0001intro A
  2. 0002intro r
  3. 0003intro s
  4. 0004intro L
  5. 0005intro M
  6. 0006intro T
  7. 0007intro V
  8. 0008intro i
  9. 0009intro j
  10. 0010intro z
  11. 0011intro hg
  12. 0012intro hv
  13. 0013intro hi
  14. 0014intro hj
  15. 0015intro hz
  16. 0016cases hg
  17. 0017cases hg_right
  18. 0018specialize hg_right_right (i)
  19. 0019specialize hg_right_right (j)
  20. 0020specialize hg_right_right (z)
  21. 0021apply hg_right_right
  22. 0022exact hi
  23. 0023exact hj
  24. 0024have hs : exists dst_positive_code_column_actual_source dst_positive_scale_column_actual_source dst_negative_code_column_actual_source dst_negative_scale_column_actual_source dst_positive_column_actual_source dst_negative_column_actual_source. (((T) = (((((dst_positive_code_column_actual_source) + (dst_positive_scale_column_actual_source)) * S ((dst_positive_code_column_actual_source) + (dst_positive_scale_column_actual_source)) + ((dst_positive_scale_column_actual_source) + (dst_positive_scale_column_actual_source))) + (((dst_negative_code_column_actual_source) + (dst_negative_scale_column_actual_source)) * S ((dst_negative_code_column_actual_source) + (dst_negative_scale_column_actual_source)) + ((dst_negative_scale_column_actual_source) + (dst_negative_scale_column_actual_source)))) * S ((((dst_positive_code_column_actual_source) + (dst_positive_scale_column_actual_source)) * S ((dst_positive_code_column_actual_source) + (dst_positive_scale_column_actual_source)) + ((dst_positive_scale_column_actual_source) + (dst_positive_scale_column_actual_source))) + (((dst_negative_code_column_actual_source) + (dst_negative_scale_column_actual_source)) * S ((dst_negative_code_column_actual_source) + (dst_negative_scale_column_actual_source)) + ((dst_negative_scale_column_actual_source) + (dst_negative_scale_column_actual_source)))) + ((((dst_negative_code_column_actual_source) + (dst_negative_scale_column_actual_source)) * S ((dst_negative_code_column_actual_source) + (dst_negative_scale_column_actual_source)) + ((dst_negative_scale_column_actual_source) + (dst_negative_scale_column_actual_source))) + (((dst_negative_code_column_actual_source) + (dst_negative_scale_column_actual_source)) * S ((dst_negative_code_column_actual_source) + (dst_negative_scale_column_actual_source)) + ((dst_negative_scale_column_actual_source) + (dst_negative_scale_column_actual_source)))))) /\ (((((exists ff_h_pvs_column_actual_sourcepositive. ff_h_pvs_column_actual_sourcepositive + S (dst_positive_column_actual_source) = S ((S (((((0) + ((1) * (j)))) + ((S M) * (i))))) * dst_positive_scale_column_actual_source)) /\ exists ff_q_pvs_column_actual_sourcepositive. dst_positive_code_column_actual_source = ff_q_pvs_column_actual_sourcepositive * S ((S (((((0) + ((1) * (j)))) + ((S M) * (i))))) * dst_positive_scale_column_actual_source) + (dst_positive_column_actual_source))) /\ (((((exists ff_h_pvs_column_actual_sourcenegative. ff_h_pvs_column_actual_sourcenegative + S (dst_negative_column_actual_source) = S ((S (((((0) + ((1) * (j)))) + ((S M) * (i))))) * dst_negative_scale_column_actual_source)) /\ exists ff_q_pvs_column_actual_sourcenegative. dst_negative_code_column_actual_source = ff_q_pvs_column_actual_sourcenegative * S ((S (((((0) + ((1) * (j)))) + ((S M) * (i))))) * dst_negative_scale_column_actual_source) + (dst_negative_column_actual_source))) /\ (exists ge_balance_positive_column_actual_sourcevalue ge_balance_negative_column_actual_sourcevalue. (((((z) = 2 * (ge_balance_positive_column_actual_sourcevalue) /\ (ge_balance_negative_column_actual_sourcevalue) = 0) \/ exists ge_signed_half_column_actual_sourcevaluedecode. (((z) = 2 * ge_signed_half_column_actual_sourcevaluedecode + 1 /\ (ge_balance_positive_column_actual_sourcevalue) = 0) /\ (ge_balance_negative_column_actual_sourcevalue) = S ge_signed_half_column_actual_sourcevaluedecode))) /\ ((dst_positive_column_actual_source) + ge_balance_negative_column_actual_sourcevalue = (dst_negative_column_actual_source) + ge_balance_positive_column_actual_sourcevalue))))))))
  25. 0025specialize signed_rectangular_slice_lookup (T)
  26. 0026specialize signed_rectangular_slice_lookup (V)
  27. 0027specialize signed_rectangular_slice_lookup (((0) + ((1) * (j))))
  28. 0028specialize signed_rectangular_slice_lookup (S M)
  29. 0029specialize signed_rectangular_slice_lookup (L)
  30. 0030specialize signed_rectangular_slice_lookup (i)
  31. 0031specialize signed_rectangular_slice_lookup (z)
  32. 0032apply signed_rectangular_slice_lookup
  33. 0033exact hv
  34. 0034exact hi
  35. 0035exact hz
  36. 0036have he : ((((0) + ((1) * (j)))) + ((S M) * (i)))=((S (M))*(i)+(j))
  37. 0037specialize zero_add (1*j)
  38. 0038rewrite zero_add
  39. 0039specialize one_mul (j)
  40. 0040rewrite one_mul
  41. 0041apply add_comm
  42. 0042rewrite he at hs
  43. 0043rewrite he at hs
  44. 0044rewrite he at hs
  45. 0045rewrite he at hs
  46. 0046exact hs