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 n l M K. (((exists dst_positive_code_unique_first_masktable dst_positive_scale_unique_first_masktable dst_negative_code_unique_first_masktable dst_negative_scale_unique_first_masktable. (((M) = (((((dst_positive_code_unique_first_masktable) + (dst_positive_scale_unique_first_masktable)) * S ((dst_positive_code_unique_first_masktable) + (dst_positive_scale_unique_first_masktable)) + ((dst_positive_scale_unique_first_masktable) + (dst_positive_scale_unique_first_masktable))) + (((dst_negative_code_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)) * S ((dst_negative_code_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)) + ((dst_negative_scale_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)))) * S ((((dst_positive_code_unique_first_masktable) + (dst_positive_scale_unique_first_masktable)) * S ((dst_positive_code_unique_first_masktable) + (dst_positive_scale_unique_first_masktable)) + ((dst_positive_scale_unique_first_masktable) + (dst_positive_scale_unique_first_masktable))) + (((dst_negative_code_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)) * S ((dst_negative_code_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)) + ((dst_negative_scale_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)))) + ((((dst_negative_code_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)) * S ((dst_negative_code_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)) + ((dst_negative_scale_unique_first_masktable) + (dst_negative_scale_unique_first_masktable))) + (((dst_negative_code_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)) * S ((dst_negative_code_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)) + ((dst_negative_scale_unique_first_masktable) + (dst_negative_scale_unique_first_masktable)))))) /\ (forall dst_index_unique_first_masktable. (exists pvs_le_gap_unique_first_masktabledomain. pvs_le_gap_unique_first_masktabledomain + (dst_index_unique_first_masktable) = (l)) -> exists dst_positive_unique_first_masktable dst_negative_unique_first_masktable dst_value_unique_first_masktable. ((((exists ff_h_pvs_unique_first_masktableentrypositive. ff_h_pvs_unique_first_masktableentrypositive + S (dst_positive_unique_first_masktable) = S ((S (dst_index_unique_first_masktable)) * dst_positive_scale_unique_first_masktable)) /\ exists ff_q_pvs_unique_first_masktableentrypositive. dst_positive_code_unique_first_masktable = ff_q_pvs_unique_first_masktableentrypositive * S ((S (dst_index_unique_first_masktable)) * dst_positive_scale_unique_first_masktable) + (dst_positive_unique_first_masktable))) /\ (((((exists ff_h_pvs_unique_first_masktableentrynegative. ff_h_pvs_unique_first_masktableentrynegative + S (dst_negative_unique_first_masktable) = S ((S (dst_index_unique_first_masktable)) * dst_negative_scale_unique_first_masktable)) /\ exists ff_q_pvs_unique_first_masktableentrynegative. dst_negative_code_unique_first_masktable = ff_q_pvs_unique_first_masktableentrynegative * S ((S (dst_index_unique_first_masktable)) * dst_negative_scale_unique_first_masktable) + (dst_negative_unique_first_masktable))) /\ (exists ge_balance_positive_unique_first_masktableentryvalue ge_balance_negative_unique_first_masktableentryvalue. (((((dst_value_unique_first_masktable) = 2 * (ge_balance_positive_unique_first_masktableentryvalue) /\ (ge_balance_negative_unique_first_masktableentryvalue) = 0) \/ exists ge_signed_half_unique_first_masktableentryvaluedecode. (((dst_value_unique_first_masktable) = 2 * ge_signed_half_unique_first_masktableentryvaluedecode + 1 /\ (ge_balance_positive_unique_first_masktableentryvalue) = 0) /\ (ge_balance_negative_unique_first_masktableentryvalue) = S ge_signed_half_unique_first_masktableentryvaluedecode))) /\ ((dst_positive_unique_first_masktable) + ge_balance_negative_unique_first_masktableentryvalue = (dst_negative_unique_first_masktable) + ge_balance_positive_unique_first_masktableentryvalue))))))))) /\ (forall dm_index_unique_first_mask dm_value_unique_first_mask. (exists pvs_le_gap_unique_first_maskdomain. pvs_le_gap_unique_first_maskdomain + (dm_index_unique_first_mask) = (l)) -> (exists dst_positive_code_unique_first_masklookup dst_positive_scale_unique_first_masklookup dst_negative_code_unique_first_masklookup dst_negative_scale_unique_first_masklookup dst_positive_unique_first_masklookup dst_negative_unique_first_masklookup. (((M) = (((((dst_positive_code_unique_first_masklookup) + (dst_positive_scale_unique_first_masklookup)) * S ((dst_positive_code_unique_first_masklookup) + (dst_positive_scale_unique_first_masklookup)) + ((dst_positive_scale_unique_first_masklookup) + (dst_positive_scale_unique_first_masklookup))) + (((dst_negative_code_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)) * S ((dst_negative_code_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)) + ((dst_negative_scale_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)))) * S ((((dst_positive_code_unique_first_masklookup) + (dst_positive_scale_unique_first_masklookup)) * S ((dst_positive_code_unique_first_masklookup) + (dst_positive_scale_unique_first_masklookup)) + ((dst_positive_scale_unique_first_masklookup) + (dst_positive_scale_unique_first_masklookup))) + (((dst_negative_code_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)) * S ((dst_negative_code_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)) + ((dst_negative_scale_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)))) + ((((dst_negative_code_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)) * S ((dst_negative_code_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)) + ((dst_negative_scale_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup))) + (((dst_negative_code_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)) * S ((dst_negative_code_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)) + ((dst_negative_scale_unique_first_masklookup) + (dst_negative_scale_unique_first_masklookup)))))) /\ (((((exists ff_h_pvs_unique_first_masklookuppositive. ff_h_pvs_unique_first_masklookuppositive + S (dst_positive_unique_first_masklookup) = S ((S (dm_index_unique_first_mask)) * dst_positive_scale_unique_first_masklookup)) /\ exists ff_q_pvs_unique_first_masklookuppositive. dst_positive_code_unique_first_masklookup = ff_q_pvs_unique_first_masklookuppositive * S ((S (dm_index_unique_first_mask)) * dst_positive_scale_unique_first_masklookup) + (dst_positive_unique_first_masklookup))) /\ (((((exists ff_h_pvs_unique_first_masklookupnegative. ff_h_pvs_unique_first_masklookupnegative + S (dst_negative_unique_first_masklookup) = S ((S (dm_index_unique_first_mask)) * dst_negative_scale_unique_first_masklookup)) /\ exists ff_q_pvs_unique_first_masklookupnegative. dst_negative_code_unique_first_masklookup = ff_q_pvs_unique_first_masklookupnegative * S ((S (dm_index_unique_first_mask)) * dst_negative_scale_unique_first_masklookup) + (dst_negative_unique_first_masklookup))) /\ (exists ge_balance_positive_unique_first_masklookupvalue ge_balance_negative_unique_first_masklookupvalue. (((((dm_value_unique_first_mask) = 2 * (ge_balance_positive_unique_first_masklookupvalue) /\ (ge_balance_negative_unique_first_masklookupvalue) = 0) \/ exists ge_signed_half_unique_first_masklookupvaluedecode. (((dm_value_unique_first_mask) = 2 * ge_signed_half_unique_first_masklookupvaluedecode + 1 /\ (ge_balance_positive_unique_first_masklookupvalue) = 0) /\ (ge_balance_negative_unique_first_masklookupvalue) = S ge_signed_half_unique_first_masklookupvaluedecode))) /\ ((dst_positive_unique_first_masklookup) + ge_balance_negative_unique_first_masklookupvalue = (dst_negative_unique_first_masklookup) + ge_balance_positive_unique_first_masklookupvalue))))))))) -> ((((~((dm_index_unique_first_mask)=0)) /\ (exists dm_quotient_unique_first_maskentry. (((n)=(dm_index_unique_first_mask)*dm_quotient_unique_first_maskentry) /\ (exists dst_positive_code_unique_first_maskentryinput dst_positive_scale_unique_first_maskentryinput dst_negative_code_unique_first_maskentryinput dst_negative_scale_unique_first_maskentryinput dst_positive_unique_first_maskentryinput dst_negative_unique_first_maskentryinput. (((F) = (((((dst_positive_code_unique_first_maskentryinput) + (dst_positive_scale_unique_first_maskentryinput)) * S ((dst_positive_code_unique_first_maskentryinput) + (dst_positive_scale_unique_first_maskentryinput)) + ((dst_positive_scale_unique_first_maskentryinput) + (dst_positive_scale_unique_first_maskentryinput))) + (((dst_negative_code_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)) * S ((dst_negative_code_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)) + ((dst_negative_scale_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)))) * S ((((dst_positive_code_unique_first_maskentryinput) + (dst_positive_scale_unique_first_maskentryinput)) * S ((dst_positive_code_unique_first_maskentryinput) + (dst_positive_scale_unique_first_maskentryinput)) + ((dst_positive_scale_unique_first_maskentryinput) + (dst_positive_scale_unique_first_maskentryinput))) + (((dst_negative_code_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)) * S ((dst_negative_code_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)) + ((dst_negative_scale_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)))) + ((((dst_negative_code_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)) * S ((dst_negative_code_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)) + ((dst_negative_scale_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput))) + (((dst_negative_code_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)) * S ((dst_negative_code_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)) + ((dst_negative_scale_unique_first_maskentryinput) + (dst_negative_scale_unique_first_maskentryinput)))))) /\ (((((exists ff_h_pvs_unique_first_maskentryinputpositive. ff_h_pvs_unique_first_maskentryinputpositive + S (dst_positive_unique_first_maskentryinput) = S ((S (dm_index_unique_first_mask)) * dst_positive_scale_unique_first_maskentryinput)) /\ exists ff_q_pvs_unique_first_maskentryinputpositive. dst_positive_code_unique_first_maskentryinput = ff_q_pvs_unique_first_maskentryinputpositive * S ((S (dm_index_unique_first_mask)) * dst_positive_scale_unique_first_maskentryinput) + (dst_positive_unique_first_maskentryinput))) /\ (((((exists ff_h_pvs_unique_first_maskentryinputnegative. ff_h_pvs_unique_first_maskentryinputnegative + S (dst_negative_unique_first_maskentryinput) = S ((S (dm_index_unique_first_mask)) * dst_negative_scale_unique_first_maskentryinput)) /\ exists ff_q_pvs_unique_first_maskentryinputnegative. dst_negative_code_unique_first_maskentryinput = ff_q_pvs_unique_first_maskentryinputnegative * S ((S (dm_index_unique_first_mask)) * dst_negative_scale_unique_first_maskentryinput) + (dst_negative_unique_first_maskentryinput))) /\ (exists ge_balance_positive_unique_first_maskentryinputvalue ge_balance_negative_unique_first_maskentryinputvalue. (((((dm_value_unique_first_mask) = 2 * (ge_balance_positive_unique_first_maskentryinputvalue) /\ (ge_balance_negative_unique_first_maskentryinputvalue) = 0) \/ exists ge_signed_half_unique_first_maskentryinputvaluedecode. (((dm_value_unique_first_mask) = 2 * ge_signed_half_unique_first_maskentryinputvaluedecode + 1 /\ (ge_balance_positive_unique_first_maskentryinputvalue) = 0) /\ (ge_balance_negative_unique_first_maskentryinputvalue) = S ge_signed_half_unique_first_maskentryinputvaluedecode))) /\ ((dst_positive_unique_first_maskentryinput) + ge_balance_negative_unique_first_maskentryinputvalue = (dst_negative_unique_first_maskentryinput) + ge_balance_positive_unique_first_maskentryinputvalue))))))))))))) \/ ((((dm_index_unique_first_mask)=0 \/ ~(exists pvs_factor_unique_first_maskentrynondivisor. (n) = (dm_index_unique_first_mask) * pvs_factor_unique_first_maskentrynondivisor)) /\ ((dm_value_unique_first_mask)=0))))))) -> (((exists dst_positive_code_unique_second_masktable dst_positive_scale_unique_second_masktable dst_negative_code_unique_second_masktable dst_negative_scale_unique_second_masktable. (((K) = (((((dst_positive_code_unique_second_masktable) + (dst_positive_scale_unique_second_masktable)) * S ((dst_positive_code_unique_second_masktable) + (dst_positive_scale_unique_second_masktable)) + ((dst_positive_scale_unique_second_masktable) + (dst_positive_scale_unique_second_masktable))) + (((dst_negative_code_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)) * S ((dst_negative_code_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)) + ((dst_negative_scale_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)))) * S ((((dst_positive_code_unique_second_masktable) + (dst_positive_scale_unique_second_masktable)) * S ((dst_positive_code_unique_second_masktable) + (dst_positive_scale_unique_second_masktable)) + ((dst_positive_scale_unique_second_masktable) + (dst_positive_scale_unique_second_masktable))) + (((dst_negative_code_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)) * S ((dst_negative_code_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)) + ((dst_negative_scale_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)))) + ((((dst_negative_code_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)) * S ((dst_negative_code_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)) + ((dst_negative_scale_unique_second_masktable) + (dst_negative_scale_unique_second_masktable))) + (((dst_negative_code_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)) * S ((dst_negative_code_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)) + ((dst_negative_scale_unique_second_masktable) + (dst_negative_scale_unique_second_masktable)))))) /\ (forall dst_index_unique_second_masktable. (exists pvs_le_gap_unique_second_masktabledomain. pvs_le_gap_unique_second_masktabledomain + (dst_index_unique_second_masktable) = (l)) -> exists dst_positive_unique_second_masktable dst_negative_unique_second_masktable dst_value_unique_second_masktable. ((((exists ff_h_pvs_unique_second_masktableentrypositive. ff_h_pvs_unique_second_masktableentrypositive + S (dst_positive_unique_second_masktable) = S ((S (dst_index_unique_second_masktable)) * dst_positive_scale_unique_second_masktable)) /\ exists ff_q_pvs_unique_second_masktableentrypositive. dst_positive_code_unique_second_masktable = ff_q_pvs_unique_second_masktableentrypositive * S ((S (dst_index_unique_second_masktable)) * dst_positive_scale_unique_second_masktable) + (dst_positive_unique_second_masktable))) /\ (((((exists ff_h_pvs_unique_second_masktableentrynegative. ff_h_pvs_unique_second_masktableentrynegative + S (dst_negative_unique_second_masktable) = S ((S (dst_index_unique_second_masktable)) * dst_negative_scale_unique_second_masktable)) /\ exists ff_q_pvs_unique_second_masktableentrynegative. dst_negative_code_unique_second_masktable = ff_q_pvs_unique_second_masktableentrynegative * S ((S (dst_index_unique_second_masktable)) * dst_negative_scale_unique_second_masktable) + (dst_negative_unique_second_masktable))) /\ (exists ge_balance_positive_unique_second_masktableentryvalue ge_balance_negative_unique_second_masktableentryvalue. (((((dst_value_unique_second_masktable) = 2 * (ge_balance_positive_unique_second_masktableentryvalue) /\ (ge_balance_negative_unique_second_masktableentryvalue) = 0) \/ exists ge_signed_half_unique_second_masktableentryvaluedecode. (((dst_value_unique_second_masktable) = 2 * ge_signed_half_unique_second_masktableentryvaluedecode + 1 /\ (ge_balance_positive_unique_second_masktableentryvalue) = 0) /\ (ge_balance_negative_unique_second_masktableentryvalue) = S ge_signed_half_unique_second_masktableentryvaluedecode))) /\ ((dst_positive_unique_second_masktable) + ge_balance_negative_unique_second_masktableentryvalue = (dst_negative_unique_second_masktable) + ge_balance_positive_unique_second_masktableentryvalue))))))))) /\ (forall dm_index_unique_second_mask dm_value_unique_second_mask. (exists pvs_le_gap_unique_second_maskdomain. pvs_le_gap_unique_second_maskdomain + (dm_index_unique_second_mask) = (l)) -> (exists dst_positive_code_unique_second_masklookup dst_positive_scale_unique_second_masklookup dst_negative_code_unique_second_masklookup dst_negative_scale_unique_second_masklookup dst_positive_unique_second_masklookup dst_negative_unique_second_masklookup. (((K) = (((((dst_positive_code_unique_second_masklookup) + (dst_positive_scale_unique_second_masklookup)) * S ((dst_positive_code_unique_second_masklookup) + (dst_positive_scale_unique_second_masklookup)) + ((dst_positive_scale_unique_second_masklookup) + (dst_positive_scale_unique_second_masklookup))) + (((dst_negative_code_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)) * S ((dst_negative_code_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)) + ((dst_negative_scale_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)))) * S ((((dst_positive_code_unique_second_masklookup) + (dst_positive_scale_unique_second_masklookup)) * S ((dst_positive_code_unique_second_masklookup) + (dst_positive_scale_unique_second_masklookup)) + ((dst_positive_scale_unique_second_masklookup) + (dst_positive_scale_unique_second_masklookup))) + (((dst_negative_code_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)) * S ((dst_negative_code_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)) + ((dst_negative_scale_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)))) + ((((dst_negative_code_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)) * S ((dst_negative_code_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)) + ((dst_negative_scale_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup))) + (((dst_negative_code_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)) * S ((dst_negative_code_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)) + ((dst_negative_scale_unique_second_masklookup) + (dst_negative_scale_unique_second_masklookup)))))) /\ (((((exists ff_h_pvs_unique_second_masklookuppositive. ff_h_pvs_unique_second_masklookuppositive + S (dst_positive_unique_second_masklookup) = S ((S (dm_index_unique_second_mask)) * dst_positive_scale_unique_second_masklookup)) /\ exists ff_q_pvs_unique_second_masklookuppositive. dst_positive_code_unique_second_masklookup = ff_q_pvs_unique_second_masklookuppositive * S ((S (dm_index_unique_second_mask)) * dst_positive_scale_unique_second_masklookup) + (dst_positive_unique_second_masklookup))) /\ (((((exists ff_h_pvs_unique_second_masklookupnegative. ff_h_pvs_unique_second_masklookupnegative + S (dst_negative_unique_second_masklookup) = S ((S (dm_index_unique_second_mask)) * dst_negative_scale_unique_second_masklookup)) /\ exists ff_q_pvs_unique_second_masklookupnegative. dst_negative_code_unique_second_masklookup = ff_q_pvs_unique_second_masklookupnegative * S ((S (dm_index_unique_second_mask)) * dst_negative_scale_unique_second_masklookup) + (dst_negative_unique_second_masklookup))) /\ (exists ge_balance_positive_unique_second_masklookupvalue ge_balance_negative_unique_second_masklookupvalue. (((((dm_value_unique_second_mask) = 2 * (ge_balance_positive_unique_second_masklookupvalue) /\ (ge_balance_negative_unique_second_masklookupvalue) = 0) \/ exists ge_signed_half_unique_second_masklookupvaluedecode. (((dm_value_unique_second_mask) = 2 * ge_signed_half_unique_second_masklookupvaluedecode + 1 /\ (ge_balance_positive_unique_second_masklookupvalue) = 0) /\ (ge_balance_negative_unique_second_masklookupvalue) = S ge_signed_half_unique_second_masklookupvaluedecode))) /\ ((dst_positive_unique_second_masklookup) + ge_balance_negative_unique_second_masklookupvalue = (dst_negative_unique_second_masklookup) + ge_balance_positive_unique_second_masklookupvalue))))))))) -> ((((~((dm_index_unique_second_mask)=0)) /\ (exists dm_quotient_unique_second_maskentry. (((n)=(dm_index_unique_second_mask)*dm_quotient_unique_second_maskentry) /\ (exists dst_positive_code_unique_second_maskentryinput dst_positive_scale_unique_second_maskentryinput dst_negative_code_unique_second_maskentryinput dst_negative_scale_unique_second_maskentryinput dst_positive_unique_second_maskentryinput dst_negative_unique_second_maskentryinput. (((F) = (((((dst_positive_code_unique_second_maskentryinput) + (dst_positive_scale_unique_second_maskentryinput)) * S ((dst_positive_code_unique_second_maskentryinput) + (dst_positive_scale_unique_second_maskentryinput)) + ((dst_positive_scale_unique_second_maskentryinput) + (dst_positive_scale_unique_second_maskentryinput))) + (((dst_negative_code_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)) * S ((dst_negative_code_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)) + ((dst_negative_scale_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)))) * S ((((dst_positive_code_unique_second_maskentryinput) + (dst_positive_scale_unique_second_maskentryinput)) * S ((dst_positive_code_unique_second_maskentryinput) + (dst_positive_scale_unique_second_maskentryinput)) + ((dst_positive_scale_unique_second_maskentryinput) + (dst_positive_scale_unique_second_maskentryinput))) + (((dst_negative_code_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)) * S ((dst_negative_code_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)) + ((dst_negative_scale_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)))) + ((((dst_negative_code_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)) * S ((dst_negative_code_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)) + ((dst_negative_scale_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput))) + (((dst_negative_code_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)) * S ((dst_negative_code_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)) + ((dst_negative_scale_unique_second_maskentryinput) + (dst_negative_scale_unique_second_maskentryinput)))))) /\ (((((exists ff_h_pvs_unique_second_maskentryinputpositive. ff_h_pvs_unique_second_maskentryinputpositive + S (dst_positive_unique_second_maskentryinput) = S ((S (dm_index_unique_second_mask)) * dst_positive_scale_unique_second_maskentryinput)) /\ exists ff_q_pvs_unique_second_maskentryinputpositive. dst_positive_code_unique_second_maskentryinput = ff_q_pvs_unique_second_maskentryinputpositive * S ((S (dm_index_unique_second_mask)) * dst_positive_scale_unique_second_maskentryinput) + (dst_positive_unique_second_maskentryinput))) /\ (((((exists ff_h_pvs_unique_second_maskentryinputnegative. ff_h_pvs_unique_second_maskentryinputnegative + S (dst_negative_unique_second_maskentryinput) = S ((S (dm_index_unique_second_mask)) * dst_negative_scale_unique_second_maskentryinput)) /\ exists ff_q_pvs_unique_second_maskentryinputnegative. dst_negative_code_unique_second_maskentryinput = ff_q_pvs_unique_second_maskentryinputnegative * S ((S (dm_index_unique_second_mask)) * dst_negative_scale_unique_second_maskentryinput) + (dst_negative_unique_second_maskentryinput))) /\ (exists ge_balance_positive_unique_second_maskentryinputvalue ge_balance_negative_unique_second_maskentryinputvalue. (((((dm_value_unique_second_mask) = 2 * (ge_balance_positive_unique_second_maskentryinputvalue) /\ (ge_balance_negative_unique_second_maskentryinputvalue) = 0) \/ exists ge_signed_half_unique_second_maskentryinputvaluedecode. (((dm_value_unique_second_mask) = 2 * ge_signed_half_unique_second_maskentryinputvaluedecode + 1 /\ (ge_balance_positive_unique_second_maskentryinputvalue) = 0) /\ (ge_balance_negative_unique_second_maskentryinputvalue) = S ge_signed_half_unique_second_maskentryinputvaluedecode))) /\ ((dst_positive_unique_second_maskentryinput) + ge_balance_negative_unique_second_maskentryinputvalue = (dst_negative_unique_second_maskentryinput) + ge_balance_positive_unique_second_maskentryinputvalue))))))))))))) \/ ((((dm_index_unique_second_mask)=0 \/ ~(exists pvs_factor_unique_second_maskentrynondivisor. (n) = (dm_index_unique_second_mask) * pvs_factor_unique_second_maskentrynondivisor)) /\ ((dm_value_unique_second_mask)=0))))))) -> (forall dst_index_unique_mask_values dst_first_unique_mask_values dst_second_unique_mask_values. (exists pvs_gap_unique_mask_valuesbound. pvs_gap_unique_mask_valuesbound + S (dst_index_unique_mask_values) = (S l)) -> (exists dst_positive_code_unique_mask_valuesfirst dst_positive_scale_unique_mask_valuesfirst dst_negative_code_unique_mask_valuesfirst dst_negative_scale_unique_mask_valuesfirst dst_positive_unique_mask_valuesfirst dst_negative_unique_mask_valuesfirst. (((M) = (((((dst_positive_code_unique_mask_valuesfirst) + (dst_positive_scale_unique_mask_valuesfirst)) * S ((dst_positive_code_unique_mask_valuesfirst) + (dst_positive_scale_unique_mask_valuesfirst)) + ((dst_positive_scale_unique_mask_valuesfirst) + (dst_positive_scale_unique_mask_valuesfirst))) + (((dst_negative_code_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)) * S ((dst_negative_code_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)) + ((dst_negative_scale_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)))) * S ((((dst_positive_code_unique_mask_valuesfirst) + (dst_positive_scale_unique_mask_valuesfirst)) * S ((dst_positive_code_unique_mask_valuesfirst) + (dst_positive_scale_unique_mask_valuesfirst)) + ((dst_positive_scale_unique_mask_valuesfirst) + (dst_positive_scale_unique_mask_valuesfirst))) + (((dst_negative_code_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)) * S ((dst_negative_code_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)) + ((dst_negative_scale_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)))) + ((((dst_negative_code_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)) * S ((dst_negative_code_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)) + ((dst_negative_scale_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst))) + (((dst_negative_code_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)) * S ((dst_negative_code_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)) + ((dst_negative_scale_unique_mask_valuesfirst) + (dst_negative_scale_unique_mask_valuesfirst)))))) /\ (((((exists ff_h_pvs_unique_mask_valuesfirstpositive. ff_h_pvs_unique_mask_valuesfirstpositive + S (dst_positive_unique_mask_valuesfirst) = S ((S (dst_index_unique_mask_values)) * dst_positive_scale_unique_mask_valuesfirst)) /\ exists ff_q_pvs_unique_mask_valuesfirstpositive. dst_positive_code_unique_mask_valuesfirst = ff_q_pvs_unique_mask_valuesfirstpositive * S ((S (dst_index_unique_mask_values)) * dst_positive_scale_unique_mask_valuesfirst) + (dst_positive_unique_mask_valuesfirst))) /\ (((((exists ff_h_pvs_unique_mask_valuesfirstnegative. ff_h_pvs_unique_mask_valuesfirstnegative + S (dst_negative_unique_mask_valuesfirst) = S ((S (dst_index_unique_mask_values)) * dst_negative_scale_unique_mask_valuesfirst)) /\ exists ff_q_pvs_unique_mask_valuesfirstnegative. dst_negative_code_unique_mask_valuesfirst = ff_q_pvs_unique_mask_valuesfirstnegative * S ((S (dst_index_unique_mask_values)) * dst_negative_scale_unique_mask_valuesfirst) + (dst_negative_unique_mask_valuesfirst))) /\ (exists ge_balance_positive_unique_mask_valuesfirstvalue ge_balance_negative_unique_mask_valuesfirstvalue. (((((dst_first_unique_mask_values) = 2 * (ge_balance_positive_unique_mask_valuesfirstvalue) /\ (ge_balance_negative_unique_mask_valuesfirstvalue) = 0) \/ exists ge_signed_half_unique_mask_valuesfirstvaluedecode. (((dst_first_unique_mask_values) = 2 * ge_signed_half_unique_mask_valuesfirstvaluedecode + 1 /\ (ge_balance_positive_unique_mask_valuesfirstvalue) = 0) /\ (ge_balance_negative_unique_mask_valuesfirstvalue) = S ge_signed_half_unique_mask_valuesfirstvaluedecode))) /\ ((dst_positive_unique_mask_valuesfirst) + ge_balance_negative_unique_mask_valuesfirstvalue = (dst_negative_unique_mask_valuesfirst) + ge_balance_positive_unique_mask_valuesfirstvalue))))))))) -> (exists dst_positive_code_unique_mask_valuessecond dst_positive_scale_unique_mask_valuessecond dst_negative_code_unique_mask_valuessecond dst_negative_scale_unique_mask_valuessecond dst_positive_unique_mask_valuessecond dst_negative_unique_mask_valuessecond. (((K) = (((((dst_positive_code_unique_mask_valuessecond) + (dst_positive_scale_unique_mask_valuessecond)) * S ((dst_positive_code_unique_mask_valuessecond) + (dst_positive_scale_unique_mask_valuessecond)) + ((dst_positive_scale_unique_mask_valuessecond) + (dst_positive_scale_unique_mask_valuessecond))) + (((dst_negative_code_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)) * S ((dst_negative_code_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)) + ((dst_negative_scale_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)))) * S ((((dst_positive_code_unique_mask_valuessecond) + (dst_positive_scale_unique_mask_valuessecond)) * S ((dst_positive_code_unique_mask_valuessecond) + (dst_positive_scale_unique_mask_valuessecond)) + ((dst_positive_scale_unique_mask_valuessecond) + (dst_positive_scale_unique_mask_valuessecond))) + (((dst_negative_code_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)) * S ((dst_negative_code_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)) + ((dst_negative_scale_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)))) + ((((dst_negative_code_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)) * S ((dst_negative_code_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)) + ((dst_negative_scale_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond))) + (((dst_negative_code_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)) * S ((dst_negative_code_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)) + ((dst_negative_scale_unique_mask_valuessecond) + (dst_negative_scale_unique_mask_valuessecond)))))) /\ (((((exists ff_h_pvs_unique_mask_valuessecondpositive. ff_h_pvs_unique_mask_valuessecondpositive + S (dst_positive_unique_mask_valuessecond) = S ((S (dst_index_unique_mask_values)) * dst_positive_scale_unique_mask_valuessecond)) /\ exists ff_q_pvs_unique_mask_valuessecondpositive. dst_positive_code_unique_mask_valuessecond = ff_q_pvs_unique_mask_valuessecondpositive * S ((S (dst_index_unique_mask_values)) * dst_positive_scale_unique_mask_valuessecond) + (dst_positive_unique_mask_valuessecond))) /\ (((((exists ff_h_pvs_unique_mask_valuessecondnegative. ff_h_pvs_unique_mask_valuessecondnegative + S (dst_negative_unique_mask_valuessecond) = S ((S (dst_index_unique_mask_values)) * dst_negative_scale_unique_mask_valuessecond)) /\ exists ff_q_pvs_unique_mask_valuessecondnegative. dst_negative_code_unique_mask_valuessecond = ff_q_pvs_unique_mask_valuessecondnegative * S ((S (dst_index_unique_mask_values)) * dst_negative_scale_unique_mask_valuessecond) + (dst_negative_unique_mask_valuessecond))) /\ (exists ge_balance_positive_unique_mask_valuessecondvalue ge_balance_negative_unique_mask_valuessecondvalue. (((((dst_second_unique_mask_values) = 2 * (ge_balance_positive_unique_mask_valuessecondvalue) /\ (ge_balance_negative_unique_mask_valuessecondvalue) = 0) \/ exists ge_signed_half_unique_mask_valuessecondvaluedecode. (((dst_second_unique_mask_values) = 2 * ge_signed_half_unique_mask_valuessecondvaluedecode + 1 /\ (ge_balance_positive_unique_mask_valuessecondvalue) = 0) /\ (ge_balance_negative_unique_mask_valuessecondvalue) = S ge_signed_half_unique_mask_valuessecondvaluedecode))) /\ ((dst_positive_unique_mask_valuessecond) + ge_balance_negative_unique_mask_valuessecondvalue = (dst_negative_unique_mask_valuessecond) + ge_balance_positive_unique_mask_valuessecondvalue))))))))) -> dst_first_unique_mask_values = dst_second_unique_mask_values)Constructive proof overview
Generated structural guide
Any two real mask constructions agree on every signed value through l, not necessarily on their beta codes or component representatives.
The unchanged tactic script uses 2 declared prerequisites and contains 36 exact native proof lines.
Alpha v34 checked-use · first admitted v31 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
le_of_succ_le_succ Stable theorem; checked-use authorized DV0014 divisor_mask_entry_functionalDirect 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–7
02Separate the logical casesL8–9
03Fix variables and assumptionsL10–15
04Establish hboundL16–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le of succ le succ.
- L16
have hbound : exists pvs_le_gap_unique_mask_bound. pvs_le_gap_unique_mask_bound + (d) = (l) - L17
specialize le_of_succ_le_succ (d) - L18
specialize le_of_succ_le_succ (l) - L19
apply le_of_succ_le_succ - L20
exact hd - L21
specialize divisor_mask_entry_functional (F) - L22
specialize divisor_mask_entry_functional (n) - L23
specialize divisor_mask_entry_functional (d) - L24
specialize divisor_mask_entry_functional (a) - L25
specialize divisor_mask_entry_functional (b)
05Use earlier factsL26–35
Instantiate or apply named facts and discharge the corresponding proof obligations.
06Use earlier factsL36–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L36
exact hb
Original exact command ledger · 36 lines
- 0001
intro F - 0002
intro n - 0003
intro l - 0004
intro M - 0005
intro K - 0006
intro hM - 0007
intro hK - 0008
cases hM - 0009
cases hK - 0010
intro d - 0011
intro a - 0012
intro b - 0013
intro hd - 0014
intro ha - 0015
intro hb - 0016
have hbound : exists pvs_le_gap_unique_mask_bound. pvs_le_gap_unique_mask_bound + (d) = (l) - 0017
specialize le_of_succ_le_succ (d) - 0018
specialize le_of_succ_le_succ (l) - 0019
apply le_of_succ_le_succ - 0020
exact hd - 0021
specialize divisor_mask_entry_functional (F) - 0022
specialize divisor_mask_entry_functional (n) - 0023
specialize divisor_mask_entry_functional (d) - 0024
specialize divisor_mask_entry_functional (a) - 0025
specialize divisor_mask_entry_functional (b) - 0026
apply divisor_mask_entry_functional - 0027
specialize hM_right (d) - 0028
specialize hM_right (a) - 0029
apply hM_right - 0030
exact hbound - 0031
exact ha - 0032
specialize hK_right (d) - 0033
specialize hK_right (b) - 0034
apply hK_right - 0035
exact hbound - 0036
exact hb