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 F G T m n k z. (((exists dst_positive_code_lookup_productF dst_positive_scale_lookup_productF dst_negative_code_lookup_productF dst_negative_scale_lookup_productF. (((F) = (((((dst_positive_code_lookup_productF) + (dst_positive_scale_lookup_productF)) * S ((dst_positive_code_lookup_productF) + (dst_positive_scale_lookup_productF)) + ((dst_positive_scale_lookup_productF) + (dst_positive_scale_lookup_productF))) + (((dst_negative_code_lookup_productF) + (dst_negative_scale_lookup_productF)) * S ((dst_negative_code_lookup_productF) + (dst_negative_scale_lookup_productF)) + ((dst_negative_scale_lookup_productF) + (dst_negative_scale_lookup_productF)))) * S ((((dst_positive_code_lookup_productF) + (dst_positive_scale_lookup_productF)) * S ((dst_positive_code_lookup_productF) + (dst_positive_scale_lookup_productF)) + ((dst_positive_scale_lookup_productF) + (dst_positive_scale_lookup_productF))) + (((dst_negative_code_lookup_productF) + (dst_negative_scale_lookup_productF)) * S ((dst_negative_code_lookup_productF) + (dst_negative_scale_lookup_productF)) + ((dst_negative_scale_lookup_productF) + (dst_negative_scale_lookup_productF)))) + ((((dst_negative_code_lookup_productF) + (dst_negative_scale_lookup_productF)) * S ((dst_negative_code_lookup_productF) + (dst_negative_scale_lookup_productF)) + ((dst_negative_scale_lookup_productF) + (dst_negative_scale_lookup_productF))) + (((dst_negative_code_lookup_productF) + (dst_negative_scale_lookup_productF)) * S ((dst_negative_code_lookup_productF) + (dst_negative_scale_lookup_productF)) + ((dst_negative_scale_lookup_productF) + (dst_negative_scale_lookup_productF)))))) /\ (forall dst_index_lookup_productF. (exists pvs_le_gap_lookup_productFdomain. pvs_le_gap_lookup_productFdomain + (dst_index_lookup_productF) = (0)) -> exists dst_positive_lookup_productF dst_negative_lookup_productF dst_value_lookup_productF. ((((exists ff_h_pvs_lookup_productFentrypositive. ff_h_pvs_lookup_productFentrypositive + S (dst_positive_lookup_productF) = S ((S (dst_index_lookup_productF)) * dst_positive_scale_lookup_productF)) /\ exists ff_q_pvs_lookup_productFentrypositive. dst_positive_code_lookup_productF = ff_q_pvs_lookup_productFentrypositive * S ((S (dst_index_lookup_productF)) * dst_positive_scale_lookup_productF) + (dst_positive_lookup_productF))) /\ (((((exists ff_h_pvs_lookup_productFentrynegative. ff_h_pvs_lookup_productFentrynegative + S (dst_negative_lookup_productF) = S ((S (dst_index_lookup_productF)) * dst_negative_scale_lookup_productF)) /\ exists ff_q_pvs_lookup_productFentrynegative. dst_negative_code_lookup_productF = ff_q_pvs_lookup_productFentrynegative * S ((S (dst_index_lookup_productF)) * dst_negative_scale_lookup_productF) + (dst_negative_lookup_productF))) /\ (exists ge_balance_positive_lookup_productFentryvalue ge_balance_negative_lookup_productFentryvalue. (((((dst_value_lookup_productF) = 2 * (ge_balance_positive_lookup_productFentryvalue) /\ (ge_balance_negative_lookup_productFentryvalue) = 0) \/ exists ge_signed_half_lookup_productFentryvaluedecode. (((dst_value_lookup_productF) = 2 * ge_signed_half_lookup_productFentryvaluedecode + 1 /\ (ge_balance_positive_lookup_productFentryvalue) = 0) /\ (ge_balance_negative_lookup_productFentryvalue) = S ge_signed_half_lookup_productFentryvaluedecode))) /\ ((dst_positive_lookup_productF) + ge_balance_negative_lookup_productFentryvalue = (dst_negative_lookup_productF) + ge_balance_positive_lookup_productFentryvalue))))))))) /\ (((exists dst_positive_code_lookup_productG dst_positive_scale_lookup_productG dst_negative_code_lookup_productG dst_negative_scale_lookup_productG. (((G) = (((((dst_positive_code_lookup_productG) + (dst_positive_scale_lookup_productG)) * S ((dst_positive_code_lookup_productG) + (dst_positive_scale_lookup_productG)) + ((dst_positive_scale_lookup_productG) + (dst_positive_scale_lookup_productG))) + (((dst_negative_code_lookup_productG) + (dst_negative_scale_lookup_productG)) * S ((dst_negative_code_lookup_productG) + (dst_negative_scale_lookup_productG)) + ((dst_negative_scale_lookup_productG) + (dst_negative_scale_lookup_productG)))) * S ((((dst_positive_code_lookup_productG) + (dst_positive_scale_lookup_productG)) * S ((dst_positive_code_lookup_productG) + (dst_positive_scale_lookup_productG)) + ((dst_positive_scale_lookup_productG) + (dst_positive_scale_lookup_productG))) + (((dst_negative_code_lookup_productG) + (dst_negative_scale_lookup_productG)) * S ((dst_negative_code_lookup_productG) + (dst_negative_scale_lookup_productG)) + ((dst_negative_scale_lookup_productG) + (dst_negative_scale_lookup_productG)))) + ((((dst_negative_code_lookup_productG) + (dst_negative_scale_lookup_productG)) * S ((dst_negative_code_lookup_productG) + (dst_negative_scale_lookup_productG)) + ((dst_negative_scale_lookup_productG) + (dst_negative_scale_lookup_productG))) + (((dst_negative_code_lookup_productG) + (dst_negative_scale_lookup_productG)) * S ((dst_negative_code_lookup_productG) + (dst_negative_scale_lookup_productG)) + ((dst_negative_scale_lookup_productG) + (dst_negative_scale_lookup_productG)))))) /\ (forall dst_index_lookup_productG. (exists pvs_le_gap_lookup_productGdomain. pvs_le_gap_lookup_productGdomain + (dst_index_lookup_productG) = (0)) -> exists dst_positive_lookup_productG dst_negative_lookup_productG dst_value_lookup_productG. ((((exists ff_h_pvs_lookup_productGentrypositive. ff_h_pvs_lookup_productGentrypositive + S (dst_positive_lookup_productG) = S ((S (dst_index_lookup_productG)) * dst_positive_scale_lookup_productG)) /\ exists ff_q_pvs_lookup_productGentrypositive. dst_positive_code_lookup_productG = ff_q_pvs_lookup_productGentrypositive * S ((S (dst_index_lookup_productG)) * dst_positive_scale_lookup_productG) + (dst_positive_lookup_productG))) /\ (((((exists ff_h_pvs_lookup_productGentrynegative. ff_h_pvs_lookup_productGentrynegative + S (dst_negative_lookup_productG) = S ((S (dst_index_lookup_productG)) * dst_negative_scale_lookup_productG)) /\ exists ff_q_pvs_lookup_productGentrynegative. dst_negative_code_lookup_productG = ff_q_pvs_lookup_productGentrynegative * S ((S (dst_index_lookup_productG)) * dst_negative_scale_lookup_productG) + (dst_negative_lookup_productG))) /\ (exists ge_balance_positive_lookup_productGentryvalue ge_balance_negative_lookup_productGentryvalue. (((((dst_value_lookup_productG) = 2 * (ge_balance_positive_lookup_productGentryvalue) /\ (ge_balance_negative_lookup_productGentryvalue) = 0) \/ exists ge_signed_half_lookup_productGentryvaluedecode. (((dst_value_lookup_productG) = 2 * ge_signed_half_lookup_productGentryvaluedecode + 1 /\ (ge_balance_positive_lookup_productGentryvalue) = 0) /\ (ge_balance_negative_lookup_productGentryvalue) = S ge_signed_half_lookup_productGentryvaluedecode))) /\ ((dst_positive_lookup_productG) + ge_balance_negative_lookup_productGentryvalue = (dst_negative_lookup_productG) + ge_balance_positive_lookup_productGentryvalue))))))))) /\ (((exists dst_positive_code_lookup_productT dst_positive_scale_lookup_productT dst_negative_code_lookup_productT dst_negative_scale_lookup_productT. (((T) = (((((dst_positive_code_lookup_productT) + (dst_positive_scale_lookup_productT)) * S ((dst_positive_code_lookup_productT) + (dst_positive_scale_lookup_productT)) + ((dst_positive_scale_lookup_productT) + (dst_positive_scale_lookup_productT))) + (((dst_negative_code_lookup_productT) + (dst_negative_scale_lookup_productT)) * S ((dst_negative_code_lookup_productT) + (dst_negative_scale_lookup_productT)) + ((dst_negative_scale_lookup_productT) + (dst_negative_scale_lookup_productT)))) * S ((((dst_positive_code_lookup_productT) + (dst_positive_scale_lookup_productT)) * S ((dst_positive_code_lookup_productT) + (dst_positive_scale_lookup_productT)) + ((dst_positive_scale_lookup_productT) + (dst_positive_scale_lookup_productT))) + (((dst_negative_code_lookup_productT) + (dst_negative_scale_lookup_productT)) * S ((dst_negative_code_lookup_productT) + (dst_negative_scale_lookup_productT)) + ((dst_negative_scale_lookup_productT) + (dst_negative_scale_lookup_productT)))) + ((((dst_negative_code_lookup_productT) + (dst_negative_scale_lookup_productT)) * S ((dst_negative_code_lookup_productT) + (dst_negative_scale_lookup_productT)) + ((dst_negative_scale_lookup_productT) + (dst_negative_scale_lookup_productT))) + (((dst_negative_code_lookup_productT) + (dst_negative_scale_lookup_productT)) * S ((dst_negative_code_lookup_productT) + (dst_negative_scale_lookup_productT)) + ((dst_negative_scale_lookup_productT) + (dst_negative_scale_lookup_productT)))))) /\ (forall dst_index_lookup_productT. (exists pvs_le_gap_lookup_productTdomain. pvs_le_gap_lookup_productTdomain + (dst_index_lookup_productT) = ((m)*(n))) -> exists dst_positive_lookup_productT dst_negative_lookup_productT dst_value_lookup_productT. ((((exists ff_h_pvs_lookup_productTentrypositive. ff_h_pvs_lookup_productTentrypositive + S (dst_positive_lookup_productT) = S ((S (dst_index_lookup_productT)) * dst_positive_scale_lookup_productT)) /\ exists ff_q_pvs_lookup_productTentrypositive. dst_positive_code_lookup_productT = ff_q_pvs_lookup_productTentrypositive * S ((S (dst_index_lookup_productT)) * dst_positive_scale_lookup_productT) + (dst_positive_lookup_productT))) /\ (((((exists ff_h_pvs_lookup_productTentrynegative. ff_h_pvs_lookup_productTentrynegative + S (dst_negative_lookup_productT) = S ((S (dst_index_lookup_productT)) * dst_negative_scale_lookup_productT)) /\ exists ff_q_pvs_lookup_productTentrynegative. dst_negative_code_lookup_productT = ff_q_pvs_lookup_productTentrynegative * S ((S (dst_index_lookup_productT)) * dst_negative_scale_lookup_productT) + (dst_negative_lookup_productT))) /\ (exists ge_balance_positive_lookup_productTentryvalue ge_balance_negative_lookup_productTentryvalue. (((((dst_value_lookup_productT) = 2 * (ge_balance_positive_lookup_productTentryvalue) /\ (ge_balance_negative_lookup_productTentryvalue) = 0) \/ exists ge_signed_half_lookup_productTentryvaluedecode. (((dst_value_lookup_productT) = 2 * ge_signed_half_lookup_productTentryvaluedecode + 1 /\ (ge_balance_positive_lookup_productTentryvalue) = 0) /\ (ge_balance_negative_lookup_productTentryvalue) = S ge_signed_half_lookup_productTentryvaluedecode))) /\ ((dst_positive_lookup_productT) + ge_balance_negative_lookup_productTentryvalue = (dst_negative_lookup_productT) + ge_balance_positive_lookup_productTentryvalue))))))))) /\ (forall scp_row_lookup_product scp_column_lookup_product scp_first_lookup_product scp_second_lookup_product scp_value_lookup_product. (exists pvs_gap_lookup_productrows. pvs_gap_lookup_productrows + S (scp_row_lookup_product) = (m)) -> (exists pvs_gap_lookup_productcolumns. pvs_gap_lookup_productcolumns + S (scp_column_lookup_product) = (n)) -> (exists dst_positive_code_lookup_productfirst dst_positive_scale_lookup_productfirst dst_negative_code_lookup_productfirst dst_negative_scale_lookup_productfirst dst_positive_lookup_productfirst dst_negative_lookup_productfirst. (((F) = (((((dst_positive_code_lookup_productfirst) + (dst_positive_scale_lookup_productfirst)) * S ((dst_positive_code_lookup_productfirst) + (dst_positive_scale_lookup_productfirst)) + ((dst_positive_scale_lookup_productfirst) + (dst_positive_scale_lookup_productfirst))) + (((dst_negative_code_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)) * S ((dst_negative_code_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)) + ((dst_negative_scale_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)))) * S ((((dst_positive_code_lookup_productfirst) + (dst_positive_scale_lookup_productfirst)) * S ((dst_positive_code_lookup_productfirst) + (dst_positive_scale_lookup_productfirst)) + ((dst_positive_scale_lookup_productfirst) + (dst_positive_scale_lookup_productfirst))) + (((dst_negative_code_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)) * S ((dst_negative_code_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)) + ((dst_negative_scale_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)))) + ((((dst_negative_code_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)) * S ((dst_negative_code_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)) + ((dst_negative_scale_lookup_productfirst) + (dst_negative_scale_lookup_productfirst))) + (((dst_negative_code_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)) * S ((dst_negative_code_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)) + ((dst_negative_scale_lookup_productfirst) + (dst_negative_scale_lookup_productfirst)))))) /\ (((((exists ff_h_pvs_lookup_productfirstpositive. ff_h_pvs_lookup_productfirstpositive + S (dst_positive_lookup_productfirst) = S ((S (scp_row_lookup_product)) * dst_positive_scale_lookup_productfirst)) /\ exists ff_q_pvs_lookup_productfirstpositive. dst_positive_code_lookup_productfirst = ff_q_pvs_lookup_productfirstpositive * S ((S (scp_row_lookup_product)) * dst_positive_scale_lookup_productfirst) + (dst_positive_lookup_productfirst))) /\ (((((exists ff_h_pvs_lookup_productfirstnegative. ff_h_pvs_lookup_productfirstnegative + S (dst_negative_lookup_productfirst) = S ((S (scp_row_lookup_product)) * dst_negative_scale_lookup_productfirst)) /\ exists ff_q_pvs_lookup_productfirstnegative. dst_negative_code_lookup_productfirst = ff_q_pvs_lookup_productfirstnegative * S ((S (scp_row_lookup_product)) * dst_negative_scale_lookup_productfirst) + (dst_negative_lookup_productfirst))) /\ (exists ge_balance_positive_lookup_productfirstvalue ge_balance_negative_lookup_productfirstvalue. (((((scp_first_lookup_product) = 2 * (ge_balance_positive_lookup_productfirstvalue) /\ (ge_balance_negative_lookup_productfirstvalue) = 0) \/ exists ge_signed_half_lookup_productfirstvaluedecode. (((scp_first_lookup_product) = 2 * ge_signed_half_lookup_productfirstvaluedecode + 1 /\ (ge_balance_positive_lookup_productfirstvalue) = 0) /\ (ge_balance_negative_lookup_productfirstvalue) = S ge_signed_half_lookup_productfirstvaluedecode))) /\ ((dst_positive_lookup_productfirst) + ge_balance_negative_lookup_productfirstvalue = (dst_negative_lookup_productfirst) + ge_balance_positive_lookup_productfirstvalue))))))))) -> (exists dst_positive_code_lookup_productsecond dst_positive_scale_lookup_productsecond dst_negative_code_lookup_productsecond dst_negative_scale_lookup_productsecond dst_positive_lookup_productsecond dst_negative_lookup_productsecond. (((G) = (((((dst_positive_code_lookup_productsecond) + (dst_positive_scale_lookup_productsecond)) * S ((dst_positive_code_lookup_productsecond) + (dst_positive_scale_lookup_productsecond)) + ((dst_positive_scale_lookup_productsecond) + (dst_positive_scale_lookup_productsecond))) + (((dst_negative_code_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)) * S ((dst_negative_code_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)) + ((dst_negative_scale_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)))) * S ((((dst_positive_code_lookup_productsecond) + (dst_positive_scale_lookup_productsecond)) * S ((dst_positive_code_lookup_productsecond) + (dst_positive_scale_lookup_productsecond)) + ((dst_positive_scale_lookup_productsecond) + (dst_positive_scale_lookup_productsecond))) + (((dst_negative_code_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)) * S ((dst_negative_code_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)) + ((dst_negative_scale_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)))) + ((((dst_negative_code_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)) * S ((dst_negative_code_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)) + ((dst_negative_scale_lookup_productsecond) + (dst_negative_scale_lookup_productsecond))) + (((dst_negative_code_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)) * S ((dst_negative_code_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)) + ((dst_negative_scale_lookup_productsecond) + (dst_negative_scale_lookup_productsecond)))))) /\ (((((exists ff_h_pvs_lookup_productsecondpositive. ff_h_pvs_lookup_productsecondpositive + S (dst_positive_lookup_productsecond) = S ((S (scp_column_lookup_product)) * dst_positive_scale_lookup_productsecond)) /\ exists ff_q_pvs_lookup_productsecondpositive. dst_positive_code_lookup_productsecond = ff_q_pvs_lookup_productsecondpositive * S ((S (scp_column_lookup_product)) * dst_positive_scale_lookup_productsecond) + (dst_positive_lookup_productsecond))) /\ (((((exists ff_h_pvs_lookup_productsecondnegative. ff_h_pvs_lookup_productsecondnegative + S (dst_negative_lookup_productsecond) = S ((S (scp_column_lookup_product)) * dst_negative_scale_lookup_productsecond)) /\ exists ff_q_pvs_lookup_productsecondnegative. dst_negative_code_lookup_productsecond = ff_q_pvs_lookup_productsecondnegative * S ((S (scp_column_lookup_product)) * dst_negative_scale_lookup_productsecond) + (dst_negative_lookup_productsecond))) /\ (exists ge_balance_positive_lookup_productsecondvalue ge_balance_negative_lookup_productsecondvalue. (((((scp_second_lookup_product) = 2 * (ge_balance_positive_lookup_productsecondvalue) /\ (ge_balance_negative_lookup_productsecondvalue) = 0) \/ exists ge_signed_half_lookup_productsecondvaluedecode. (((scp_second_lookup_product) = 2 * ge_signed_half_lookup_productsecondvaluedecode + 1 /\ (ge_balance_positive_lookup_productsecondvalue) = 0) /\ (ge_balance_negative_lookup_productsecondvalue) = S ge_signed_half_lookup_productsecondvaluedecode))) /\ ((dst_positive_lookup_productsecond) + ge_balance_negative_lookup_productsecondvalue = (dst_negative_lookup_productsecond) + ge_balance_positive_lookup_productsecondvalue))))))))) -> (exists dst_positive_code_lookup_productentry dst_positive_scale_lookup_productentry dst_negative_code_lookup_productentry dst_negative_scale_lookup_productentry dst_positive_lookup_productentry dst_negative_lookup_productentry. (((T) = (((((dst_positive_code_lookup_productentry) + (dst_positive_scale_lookup_productentry)) * S ((dst_positive_code_lookup_productentry) + (dst_positive_scale_lookup_productentry)) + ((dst_positive_scale_lookup_productentry) + (dst_positive_scale_lookup_productentry))) + (((dst_negative_code_lookup_productentry) + (dst_negative_scale_lookup_productentry)) * S ((dst_negative_code_lookup_productentry) + (dst_negative_scale_lookup_productentry)) + ((dst_negative_scale_lookup_productentry) + (dst_negative_scale_lookup_productentry)))) * S ((((dst_positive_code_lookup_productentry) + (dst_positive_scale_lookup_productentry)) * S ((dst_positive_code_lookup_productentry) + (dst_positive_scale_lookup_productentry)) + ((dst_positive_scale_lookup_productentry) + (dst_positive_scale_lookup_productentry))) + (((dst_negative_code_lookup_productentry) + (dst_negative_scale_lookup_productentry)) * S ((dst_negative_code_lookup_productentry) + (dst_negative_scale_lookup_productentry)) + ((dst_negative_scale_lookup_productentry) + (dst_negative_scale_lookup_productentry)))) + ((((dst_negative_code_lookup_productentry) + (dst_negative_scale_lookup_productentry)) * S ((dst_negative_code_lookup_productentry) + (dst_negative_scale_lookup_productentry)) + ((dst_negative_scale_lookup_productentry) + (dst_negative_scale_lookup_productentry))) + (((dst_negative_code_lookup_productentry) + (dst_negative_scale_lookup_productentry)) * S ((dst_negative_code_lookup_productentry) + (dst_negative_scale_lookup_productentry)) + ((dst_negative_scale_lookup_productentry) + (dst_negative_scale_lookup_productentry)))))) /\ (((((exists ff_h_pvs_lookup_productentrypositive. ff_h_pvs_lookup_productentrypositive + S (dst_positive_lookup_productentry) = S ((S (((n)*(scp_row_lookup_product)+(scp_column_lookup_product)))) * dst_positive_scale_lookup_productentry)) /\ exists ff_q_pvs_lookup_productentrypositive. dst_positive_code_lookup_productentry = ff_q_pvs_lookup_productentrypositive * S ((S (((n)*(scp_row_lookup_product)+(scp_column_lookup_product)))) * dst_positive_scale_lookup_productentry) + (dst_positive_lookup_productentry))) /\ (((((exists ff_h_pvs_lookup_productentrynegative. ff_h_pvs_lookup_productentrynegative + S (dst_negative_lookup_productentry) = S ((S (((n)*(scp_row_lookup_product)+(scp_column_lookup_product)))) * dst_negative_scale_lookup_productentry)) /\ exists ff_q_pvs_lookup_productentrynegative. dst_negative_code_lookup_productentry = ff_q_pvs_lookup_productentrynegative * S ((S (((n)*(scp_row_lookup_product)+(scp_column_lookup_product)))) * dst_negative_scale_lookup_productentry) + (dst_negative_lookup_productentry))) /\ (exists ge_balance_positive_lookup_productentryvalue ge_balance_negative_lookup_productentryvalue. (((((scp_value_lookup_product) = 2 * (ge_balance_positive_lookup_productentryvalue) /\ (ge_balance_negative_lookup_productentryvalue) = 0) \/ exists ge_signed_half_lookup_productentryvaluedecode. (((scp_value_lookup_product) = 2 * ge_signed_half_lookup_productentryvaluedecode + 1 /\ (ge_balance_positive_lookup_productentryvalue) = 0) /\ (ge_balance_negative_lookup_productentryvalue) = S ge_signed_half_lookup_productentryvaluedecode))) /\ ((dst_positive_lookup_productentry) + ge_balance_negative_lookup_productentryvalue = (dst_negative_lookup_productentry) + ge_balance_positive_lookup_productentryvalue))))))))) -> (exists sto_ap_lookup_productmultiply sto_an_lookup_productmultiply sto_bp_lookup_productmultiply sto_bn_lookup_productmultiply sto_cp_lookup_productmultiply sto_cn_lookup_productmultiply. (((((scp_first_lookup_product) = 2 * (sto_ap_lookup_productmultiply) /\ (sto_an_lookup_productmultiply) = 0) \/ exists ge_signed_half_lookup_productmultiplyleft. (((scp_first_lookup_product) = 2 * ge_signed_half_lookup_productmultiplyleft + 1 /\ (sto_ap_lookup_productmultiply) = 0) /\ (sto_an_lookup_productmultiply) = S ge_signed_half_lookup_productmultiplyleft))) /\ ((((((scp_second_lookup_product) = 2 * (sto_bp_lookup_productmultiply) /\ (sto_bn_lookup_productmultiply) = 0) \/ exists ge_signed_half_lookup_productmultiplyright. (((scp_second_lookup_product) = 2 * ge_signed_half_lookup_productmultiplyright + 1 /\ (sto_bp_lookup_productmultiply) = 0) /\ (sto_bn_lookup_productmultiply) = S ge_signed_half_lookup_productmultiplyright))) /\ ((((((scp_value_lookup_product) = 2 * (sto_cp_lookup_productmultiply) /\ (sto_cn_lookup_productmultiply) = 0) \/ exists ge_signed_half_lookup_productmultiplyoutput. (((scp_value_lookup_product) = 2 * ge_signed_half_lookup_productmultiplyoutput + 1 /\ (sto_cp_lookup_productmultiply) = 0) /\ (sto_cn_lookup_productmultiply) = S ge_signed_half_lookup_productmultiplyoutput))) /\ ((sto_ap_lookup_productmultiply * sto_bp_lookup_productmultiply + sto_an_lookup_productmultiply * sto_bn_lookup_productmultiply) + sto_cn_lookup_productmultiply = (sto_ap_lookup_productmultiply * sto_bn_lookup_productmultiply + sto_an_lookup_productmultiply * sto_bp_lookup_productmultiply) + sto_cp_lookup_productmultiply)))))))))))))) -> (exists pvs_gap_lookup_bound. pvs_gap_lookup_bound + S (k) = (m*n)) -> (exists dst_positive_code_lookup_value dst_positive_scale_lookup_value dst_negative_code_lookup_value dst_negative_scale_lookup_value dst_positive_lookup_value dst_negative_lookup_value. (((T) = (((((dst_positive_code_lookup_value) + (dst_positive_scale_lookup_value)) * S ((dst_positive_code_lookup_value) + (dst_positive_scale_lookup_value)) + ((dst_positive_scale_lookup_value) + (dst_positive_scale_lookup_value))) + (((dst_negative_code_lookup_value) + (dst_negative_scale_lookup_value)) * S ((dst_negative_code_lookup_value) + (dst_negative_scale_lookup_value)) + ((dst_negative_scale_lookup_value) + (dst_negative_scale_lookup_value)))) * S ((((dst_positive_code_lookup_value) + (dst_positive_scale_lookup_value)) * S ((dst_positive_code_lookup_value) + (dst_positive_scale_lookup_value)) + ((dst_positive_scale_lookup_value) + (dst_positive_scale_lookup_value))) + (((dst_negative_code_lookup_value) + (dst_negative_scale_lookup_value)) * S ((dst_negative_code_lookup_value) + (dst_negative_scale_lookup_value)) + ((dst_negative_scale_lookup_value) + (dst_negative_scale_lookup_value)))) + ((((dst_negative_code_lookup_value) + (dst_negative_scale_lookup_value)) * S ((dst_negative_code_lookup_value) + (dst_negative_scale_lookup_value)) + ((dst_negative_scale_lookup_value) + (dst_negative_scale_lookup_value))) + (((dst_negative_code_lookup_value) + (dst_negative_scale_lookup_value)) * S ((dst_negative_code_lookup_value) + (dst_negative_scale_lookup_value)) + ((dst_negative_scale_lookup_value) + (dst_negative_scale_lookup_value)))))) /\ (((((exists ff_h_pvs_lookup_valuepositive. ff_h_pvs_lookup_valuepositive + S (dst_positive_lookup_value) = S ((S (k)) * dst_positive_scale_lookup_value)) /\ exists ff_q_pvs_lookup_valuepositive. dst_positive_code_lookup_value = ff_q_pvs_lookup_valuepositive * S ((S (k)) * dst_positive_scale_lookup_value) + (dst_positive_lookup_value))) /\ (((((exists ff_h_pvs_lookup_valuenegative. ff_h_pvs_lookup_valuenegative + S (dst_negative_lookup_value) = S ((S (k)) * dst_negative_scale_lookup_value)) /\ exists ff_q_pvs_lookup_valuenegative. dst_negative_code_lookup_value = ff_q_pvs_lookup_valuenegative * S ((S (k)) * dst_negative_scale_lookup_value) + (dst_negative_lookup_value))) /\ (exists ge_balance_positive_lookup_valuevalue ge_balance_negative_lookup_valuevalue. (((((z) = 2 * (ge_balance_positive_lookup_valuevalue) /\ (ge_balance_negative_lookup_valuevalue) = 0) \/ exists ge_signed_half_lookup_valuevaluedecode. (((z) = 2 * ge_signed_half_lookup_valuevaluedecode + 1 /\ (ge_balance_positive_lookup_valuevalue) = 0) /\ (ge_balance_negative_lookup_valuevalue) = S ge_signed_half_lookup_valuevaluedecode))) /\ ((dst_positive_lookup_value) + ge_balance_negative_lookup_valuevalue = (dst_negative_lookup_value) + ge_balance_positive_lookup_valuevalue))))))))) -> exists d e a b. ((k=n*d+e) /\ (((exists pvs_gap_lookup_row. pvs_gap_lookup_row + S (d) = (m)) /\ (((exists pvs_gap_lookup_column. pvs_gap_lookup_column + S (e) = (n)) /\ (((exists dst_positive_code_lookup_F dst_positive_scale_lookup_F dst_negative_code_lookup_F dst_negative_scale_lookup_F dst_positive_lookup_F dst_negative_lookup_F. (((F) = (((((dst_positive_code_lookup_F) + (dst_positive_scale_lookup_F)) * S ((dst_positive_code_lookup_F) + (dst_positive_scale_lookup_F)) + ((dst_positive_scale_lookup_F) + (dst_positive_scale_lookup_F))) + (((dst_negative_code_lookup_F) + (dst_negative_scale_lookup_F)) * S ((dst_negative_code_lookup_F) + (dst_negative_scale_lookup_F)) + ((dst_negative_scale_lookup_F) + (dst_negative_scale_lookup_F)))) * S ((((dst_positive_code_lookup_F) + (dst_positive_scale_lookup_F)) * S ((dst_positive_code_lookup_F) + (dst_positive_scale_lookup_F)) + ((dst_positive_scale_lookup_F) + (dst_positive_scale_lookup_F))) + (((dst_negative_code_lookup_F) + (dst_negative_scale_lookup_F)) * S ((dst_negative_code_lookup_F) + (dst_negative_scale_lookup_F)) + ((dst_negative_scale_lookup_F) + (dst_negative_scale_lookup_F)))) + ((((dst_negative_code_lookup_F) + (dst_negative_scale_lookup_F)) * S ((dst_negative_code_lookup_F) + (dst_negative_scale_lookup_F)) + ((dst_negative_scale_lookup_F) + (dst_negative_scale_lookup_F))) + (((dst_negative_code_lookup_F) + (dst_negative_scale_lookup_F)) * S ((dst_negative_code_lookup_F) + (dst_negative_scale_lookup_F)) + ((dst_negative_scale_lookup_F) + (dst_negative_scale_lookup_F)))))) /\ (((((exists ff_h_pvs_lookup_Fpositive. ff_h_pvs_lookup_Fpositive + S (dst_positive_lookup_F) = S ((S (d)) * dst_positive_scale_lookup_F)) /\ exists ff_q_pvs_lookup_Fpositive. dst_positive_code_lookup_F = ff_q_pvs_lookup_Fpositive * S ((S (d)) * dst_positive_scale_lookup_F) + (dst_positive_lookup_F))) /\ (((((exists ff_h_pvs_lookup_Fnegative. ff_h_pvs_lookup_Fnegative + S (dst_negative_lookup_F) = S ((S (d)) * dst_negative_scale_lookup_F)) /\ exists ff_q_pvs_lookup_Fnegative. dst_negative_code_lookup_F = ff_q_pvs_lookup_Fnegative * S ((S (d)) * dst_negative_scale_lookup_F) + (dst_negative_lookup_F))) /\ (exists ge_balance_positive_lookup_Fvalue ge_balance_negative_lookup_Fvalue. (((((a) = 2 * (ge_balance_positive_lookup_Fvalue) /\ (ge_balance_negative_lookup_Fvalue) = 0) \/ exists ge_signed_half_lookup_Fvaluedecode. (((a) = 2 * ge_signed_half_lookup_Fvaluedecode + 1 /\ (ge_balance_positive_lookup_Fvalue) = 0) /\ (ge_balance_negative_lookup_Fvalue) = S ge_signed_half_lookup_Fvaluedecode))) /\ ((dst_positive_lookup_F) + ge_balance_negative_lookup_Fvalue = (dst_negative_lookup_F) + ge_balance_positive_lookup_Fvalue))))))))) /\ (((exists dst_positive_code_lookup_G dst_positive_scale_lookup_G dst_negative_code_lookup_G dst_negative_scale_lookup_G dst_positive_lookup_G dst_negative_lookup_G. (((G) = (((((dst_positive_code_lookup_G) + (dst_positive_scale_lookup_G)) * S ((dst_positive_code_lookup_G) + (dst_positive_scale_lookup_G)) + ((dst_positive_scale_lookup_G) + (dst_positive_scale_lookup_G))) + (((dst_negative_code_lookup_G) + (dst_negative_scale_lookup_G)) * S ((dst_negative_code_lookup_G) + (dst_negative_scale_lookup_G)) + ((dst_negative_scale_lookup_G) + (dst_negative_scale_lookup_G)))) * S ((((dst_positive_code_lookup_G) + (dst_positive_scale_lookup_G)) * S ((dst_positive_code_lookup_G) + (dst_positive_scale_lookup_G)) + ((dst_positive_scale_lookup_G) + (dst_positive_scale_lookup_G))) + (((dst_negative_code_lookup_G) + (dst_negative_scale_lookup_G)) * S ((dst_negative_code_lookup_G) + (dst_negative_scale_lookup_G)) + ((dst_negative_scale_lookup_G) + (dst_negative_scale_lookup_G)))) + ((((dst_negative_code_lookup_G) + (dst_negative_scale_lookup_G)) * S ((dst_negative_code_lookup_G) + (dst_negative_scale_lookup_G)) + ((dst_negative_scale_lookup_G) + (dst_negative_scale_lookup_G))) + (((dst_negative_code_lookup_G) + (dst_negative_scale_lookup_G)) * S ((dst_negative_code_lookup_G) + (dst_negative_scale_lookup_G)) + ((dst_negative_scale_lookup_G) + (dst_negative_scale_lookup_G)))))) /\ (((((exists ff_h_pvs_lookup_Gpositive. ff_h_pvs_lookup_Gpositive + S (dst_positive_lookup_G) = S ((S (e)) * dst_positive_scale_lookup_G)) /\ exists ff_q_pvs_lookup_Gpositive. dst_positive_code_lookup_G = ff_q_pvs_lookup_Gpositive * S ((S (e)) * dst_positive_scale_lookup_G) + (dst_positive_lookup_G))) /\ (((((exists ff_h_pvs_lookup_Gnegative. ff_h_pvs_lookup_Gnegative + S (dst_negative_lookup_G) = S ((S (e)) * dst_negative_scale_lookup_G)) /\ exists ff_q_pvs_lookup_Gnegative. dst_negative_code_lookup_G = ff_q_pvs_lookup_Gnegative * S ((S (e)) * dst_negative_scale_lookup_G) + (dst_negative_lookup_G))) /\ (exists ge_balance_positive_lookup_Gvalue ge_balance_negative_lookup_Gvalue. (((((b) = 2 * (ge_balance_positive_lookup_Gvalue) /\ (ge_balance_negative_lookup_Gvalue) = 0) \/ exists ge_signed_half_lookup_Gvaluedecode. (((b) = 2 * ge_signed_half_lookup_Gvaluedecode + 1 /\ (ge_balance_positive_lookup_Gvalue) = 0) /\ (ge_balance_negative_lookup_Gvalue) = S ge_signed_half_lookup_Gvaluedecode))) /\ ((dst_positive_lookup_G) + ge_balance_negative_lookup_Gvalue = (dst_negative_lookup_G) + ge_balance_positive_lookup_Gvalue))))))))) /\ (exists sto_ap_lookup_result sto_an_lookup_result sto_bp_lookup_result sto_bn_lookup_result sto_cp_lookup_result sto_cn_lookup_result. (((((a) = 2 * (sto_ap_lookup_result) /\ (sto_an_lookup_result) = 0) \/ exists ge_signed_half_lookup_resultleft. (((a) = 2 * ge_signed_half_lookup_resultleft + 1 /\ (sto_ap_lookup_result) = 0) /\ (sto_an_lookup_result) = S ge_signed_half_lookup_resultleft))) /\ ((((((b) = 2 * (sto_bp_lookup_result) /\ (sto_bn_lookup_result) = 0) \/ exists ge_signed_half_lookup_resultright. (((b) = 2 * ge_signed_half_lookup_resultright + 1 /\ (sto_bp_lookup_result) = 0) /\ (sto_bn_lookup_result) = S ge_signed_half_lookup_resultright))) /\ ((((((z) = 2 * (sto_cp_lookup_result) /\ (sto_cn_lookup_result) = 0) \/ exists ge_signed_half_lookup_resultoutput. (((z) = 2 * ge_signed_half_lookup_resultoutput + 1 /\ (sto_cp_lookup_result) = 0) /\ (sto_cn_lookup_result) = S ge_signed_half_lookup_resultoutput))) /\ ((sto_ap_lookup_result * sto_bp_lookup_result + sto_an_lookup_result * sto_bn_lookup_result) + sto_cn_lookup_result = (sto_ap_lookup_result * sto_bn_lookup_result + sto_an_lookup_result * sto_bp_lookup_result) + sto_cp_lookup_result))))))))))))))))Constructive proof overview
Generated structural guide
An actual in-range product-table lookup supplies real bounded coordinates, both actual source values and their genuine signed product.
The unchanged tactic script uses 2 declared prerequisites and contains 66 exact native proof lines.
Alpha v34 checked-use · first admitted v32 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
MX002E signed_cartesian_coordinates_exists signed_table_lookup_any Alpha theorem; checked-use authorizedDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (1)
01Fix variables and assumptionsL1–10
02Separate the logical casesL11–13
03Establish hdL14–19
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed cartesian coordinates exists.
- L14
have hd : exists scp_coordinate_row_lookup_coordinates scp_coordinate_column_lookup_coordinates. (((k)=((n)*(scp_coordinate_row_lookup_coordinates)+(scp_coordinate_column_lookup_coordinates))) /\ (((exists pvs_gap_lookup_coordinatesrow. pvs_gap_lookup_coordinatesrow + S (scp_coordinate_row_lookup_coordinates) = (m)) /\ (exists pvs_gap_lookup_coordinatescolumn. pvs_gap_lookup_coordinatescolumn + S (scp_coordinate_column_lookup_coordinates) = (n))))) - L15
specialize signed_cartesian_coordinates_exists (m) - L16
specialize signed_cartesian_coordinates_exists (n) - L17
specialize signed_cartesian_coordinates_exists (k) - L18
apply signed_cartesian_coordinates_exists - L19
exact hk
04Separate the logical casesL20–23
05Establish haL24–29
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed table lookup any.
06Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
cases ha
07Establish hbL31–36
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed table lookup any.
08Separate the logical casesL37–37
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L37
cases hb
09Construct an explicit witnessL38–41
10Separate the logical casesL42–42
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
split
11Use earlier factsL43–43
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L43
exact hd_witness_witness_left
12Separate the logical casesL44–44
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L44
split
13Use earlier factsL45–45
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L45
exact hd_witness_witness_right_left
14Separate the logical casesL46–46
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L46
split
15Use earlier factsL47–47
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L47
exact hd_witness_witness_right_right
16Separate the logical casesL48–48
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L48
split
17Use earlier factsL49–49
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L49
exact ha_witness
18Separate the logical casesL50–50
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L50
split
19Use earlier factsL51–60
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L51
exact hb_witness - L52
specialize hp_right_right_right (x) - L53
specialize hp_right_right_right (x1) - L54
specialize hp_right_right_right (x2) - L55
specialize hp_right_right_right (x3) - L56
specialize hp_right_right_right (z) - L57
apply hp_right_right_right - L58
exact hd_witness_witness_right_left - L59
exact hd_witness_witness_right_right - L60
exact ha_witness
20Use earlier factsL61–61
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L61
exact hb_witness
21Calculate and transport equalitiesL62–65
22Use earlier factsL66–66
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L66
exact hz
Original exact command ledger · 66 lines
- 0001
intro F - 0002
intro G - 0003
intro T - 0004
intro m - 0005
intro n - 0006
intro k - 0007
intro z - 0008
intro hp - 0009
intro hk - 0010
intro hz - 0011
cases hp - 0012
cases hp_right - 0013
cases hp_right_right - 0014
have hd : exists scp_coordinate_row_lookup_coordinates scp_coordinate_column_lookup_coordinates. (((k)=((n)*(scp_coordinate_row_lookup_coordinates)+(scp_coordinate_column_lookup_coordinates))) /\ (((exists pvs_gap_lookup_coordinatesrow. pvs_gap_lookup_coordinatesrow + S (scp_coordinate_row_lookup_coordinates) = (m)) /\ (exists pvs_gap_lookup_coordinatescolumn. pvs_gap_lookup_coordinatescolumn + S (scp_coordinate_column_lookup_coordinates) = (n))))) - 0015
specialize signed_cartesian_coordinates_exists (m) - 0016
specialize signed_cartesian_coordinates_exists (n) - 0017
specialize signed_cartesian_coordinates_exists (k) - 0018
apply signed_cartesian_coordinates_exists - 0019
exact hk - 0020
cases hd - 0021
cases hd_witness - 0022
cases hd_witness_witness - 0023
cases hd_witness_witness_right - 0024
have ha : exists a. (exists dst_positive_code_lookup_first dst_positive_scale_lookup_first dst_negative_code_lookup_first dst_negative_scale_lookup_first dst_positive_lookup_first dst_negative_lookup_first. (((F) = (((((dst_positive_code_lookup_first) + (dst_positive_scale_lookup_first)) * S ((dst_positive_code_lookup_first) + (dst_positive_scale_lookup_first)) + ((dst_positive_scale_lookup_first) + (dst_positive_scale_lookup_first))) + (((dst_negative_code_lookup_first) + (dst_negative_scale_lookup_first)) * S ((dst_negative_code_lookup_first) + (dst_negative_scale_lookup_first)) + ((dst_negative_scale_lookup_first) + (dst_negative_scale_lookup_first)))) * S ((((dst_positive_code_lookup_first) + (dst_positive_scale_lookup_first)) * S ((dst_positive_code_lookup_first) + (dst_positive_scale_lookup_first)) + ((dst_positive_scale_lookup_first) + (dst_positive_scale_lookup_first))) + (((dst_negative_code_lookup_first) + (dst_negative_scale_lookup_first)) * S ((dst_negative_code_lookup_first) + (dst_negative_scale_lookup_first)) + ((dst_negative_scale_lookup_first) + (dst_negative_scale_lookup_first)))) + ((((dst_negative_code_lookup_first) + (dst_negative_scale_lookup_first)) * S ((dst_negative_code_lookup_first) + (dst_negative_scale_lookup_first)) + ((dst_negative_scale_lookup_first) + (dst_negative_scale_lookup_first))) + (((dst_negative_code_lookup_first) + (dst_negative_scale_lookup_first)) * S ((dst_negative_code_lookup_first) + (dst_negative_scale_lookup_first)) + ((dst_negative_scale_lookup_first) + (dst_negative_scale_lookup_first)))))) /\ (((((exists ff_h_pvs_lookup_firstpositive. ff_h_pvs_lookup_firstpositive + S (dst_positive_lookup_first) = S ((S (x)) * dst_positive_scale_lookup_first)) /\ exists ff_q_pvs_lookup_firstpositive. dst_positive_code_lookup_first = ff_q_pvs_lookup_firstpositive * S ((S (x)) * dst_positive_scale_lookup_first) + (dst_positive_lookup_first))) /\ (((((exists ff_h_pvs_lookup_firstnegative. ff_h_pvs_lookup_firstnegative + S (dst_negative_lookup_first) = S ((S (x)) * dst_negative_scale_lookup_first)) /\ exists ff_q_pvs_lookup_firstnegative. dst_negative_code_lookup_first = ff_q_pvs_lookup_firstnegative * S ((S (x)) * dst_negative_scale_lookup_first) + (dst_negative_lookup_first))) /\ (exists ge_balance_positive_lookup_firstvalue ge_balance_negative_lookup_firstvalue. (((((a) = 2 * (ge_balance_positive_lookup_firstvalue) /\ (ge_balance_negative_lookup_firstvalue) = 0) \/ exists ge_signed_half_lookup_firstvaluedecode. (((a) = 2 * ge_signed_half_lookup_firstvaluedecode + 1 /\ (ge_balance_positive_lookup_firstvalue) = 0) /\ (ge_balance_negative_lookup_firstvalue) = S ge_signed_half_lookup_firstvaluedecode))) /\ ((dst_positive_lookup_first) + ge_balance_negative_lookup_firstvalue = (dst_negative_lookup_first) + ge_balance_positive_lookup_firstvalue))))))))) - 0025
specialize signed_table_lookup_any (0) - 0026
specialize signed_table_lookup_any (F) - 0027
specialize signed_table_lookup_any (x) - 0028
apply signed_table_lookup_any - 0029
exact hp_left - 0030
cases ha - 0031
have hb : exists b. (exists dst_positive_code_lookup_second dst_positive_scale_lookup_second dst_negative_code_lookup_second dst_negative_scale_lookup_second dst_positive_lookup_second dst_negative_lookup_second. (((G) = (((((dst_positive_code_lookup_second) + (dst_positive_scale_lookup_second)) * S ((dst_positive_code_lookup_second) + (dst_positive_scale_lookup_second)) + ((dst_positive_scale_lookup_second) + (dst_positive_scale_lookup_second))) + (((dst_negative_code_lookup_second) + (dst_negative_scale_lookup_second)) * S ((dst_negative_code_lookup_second) + (dst_negative_scale_lookup_second)) + ((dst_negative_scale_lookup_second) + (dst_negative_scale_lookup_second)))) * S ((((dst_positive_code_lookup_second) + (dst_positive_scale_lookup_second)) * S ((dst_positive_code_lookup_second) + (dst_positive_scale_lookup_second)) + ((dst_positive_scale_lookup_second) + (dst_positive_scale_lookup_second))) + (((dst_negative_code_lookup_second) + (dst_negative_scale_lookup_second)) * S ((dst_negative_code_lookup_second) + (dst_negative_scale_lookup_second)) + ((dst_negative_scale_lookup_second) + (dst_negative_scale_lookup_second)))) + ((((dst_negative_code_lookup_second) + (dst_negative_scale_lookup_second)) * S ((dst_negative_code_lookup_second) + (dst_negative_scale_lookup_second)) + ((dst_negative_scale_lookup_second) + (dst_negative_scale_lookup_second))) + (((dst_negative_code_lookup_second) + (dst_negative_scale_lookup_second)) * S ((dst_negative_code_lookup_second) + (dst_negative_scale_lookup_second)) + ((dst_negative_scale_lookup_second) + (dst_negative_scale_lookup_second)))))) /\ (((((exists ff_h_pvs_lookup_secondpositive. ff_h_pvs_lookup_secondpositive + S (dst_positive_lookup_second) = S ((S (x1)) * dst_positive_scale_lookup_second)) /\ exists ff_q_pvs_lookup_secondpositive. dst_positive_code_lookup_second = ff_q_pvs_lookup_secondpositive * S ((S (x1)) * dst_positive_scale_lookup_second) + (dst_positive_lookup_second))) /\ (((((exists ff_h_pvs_lookup_secondnegative. ff_h_pvs_lookup_secondnegative + S (dst_negative_lookup_second) = S ((S (x1)) * dst_negative_scale_lookup_second)) /\ exists ff_q_pvs_lookup_secondnegative. dst_negative_code_lookup_second = ff_q_pvs_lookup_secondnegative * S ((S (x1)) * dst_negative_scale_lookup_second) + (dst_negative_lookup_second))) /\ (exists ge_balance_positive_lookup_secondvalue ge_balance_negative_lookup_secondvalue. (((((b) = 2 * (ge_balance_positive_lookup_secondvalue) /\ (ge_balance_negative_lookup_secondvalue) = 0) \/ exists ge_signed_half_lookup_secondvaluedecode. (((b) = 2 * ge_signed_half_lookup_secondvaluedecode + 1 /\ (ge_balance_positive_lookup_secondvalue) = 0) /\ (ge_balance_negative_lookup_secondvalue) = S ge_signed_half_lookup_secondvaluedecode))) /\ ((dst_positive_lookup_second) + ge_balance_negative_lookup_secondvalue = (dst_negative_lookup_second) + ge_balance_positive_lookup_secondvalue))))))))) - 0032
specialize signed_table_lookup_any (0) - 0033
specialize signed_table_lookup_any (G) - 0034
specialize signed_table_lookup_any (x1) - 0035
apply signed_table_lookup_any - 0036
exact hp_right_left - 0037
cases hb - 0038
exists x - 0039
exists x1 - 0040
exists x2 - 0041
exists x3 - 0042
split - 0043
exact hd_witness_witness_left - 0044
split - 0045
exact hd_witness_witness_right_left - 0046
split - 0047
exact hd_witness_witness_right_right - 0048
split - 0049
exact ha_witness - 0050
split - 0051
exact hb_witness - 0052
specialize hp_right_right_right (x) - 0053
specialize hp_right_right_right (x1) - 0054
specialize hp_right_right_right (x2) - 0055
specialize hp_right_right_right (x3) - 0056
specialize hp_right_right_right (z) - 0057
apply hp_right_right_right - 0058
exact hd_witness_witness_right_left - 0059
exact hd_witness_witness_right_right - 0060
exact ha_witness - 0061
exact hb_witness - 0062
rewrite hd_witness_witness_left at hz - 0063
rewrite hd_witness_witness_left at hz - 0064
rewrite hd_witness_witness_left at hz - 0065
rewrite hd_witness_witness_left at hz - 0066
exact hz