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 n L M z. ~(n=0) -> (exists pvs_le_gap_padded_bound. pvs_le_gap_padded_bound + (n) = (L)) -> (((exists dst_positive_code_padded_prefixtable dst_positive_scale_padded_prefixtable dst_negative_code_padded_prefixtable dst_negative_scale_padded_prefixtable. (((M) = (((((dst_positive_code_padded_prefixtable) + (dst_positive_scale_padded_prefixtable)) * S ((dst_positive_code_padded_prefixtable) + (dst_positive_scale_padded_prefixtable)) + ((dst_positive_scale_padded_prefixtable) + (dst_positive_scale_padded_prefixtable))) + (((dst_negative_code_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)) * S ((dst_negative_code_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)) + ((dst_negative_scale_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)))) * S ((((dst_positive_code_padded_prefixtable) + (dst_positive_scale_padded_prefixtable)) * S ((dst_positive_code_padded_prefixtable) + (dst_positive_scale_padded_prefixtable)) + ((dst_positive_scale_padded_prefixtable) + (dst_positive_scale_padded_prefixtable))) + (((dst_negative_code_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)) * S ((dst_negative_code_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)) + ((dst_negative_scale_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)))) + ((((dst_negative_code_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)) * S ((dst_negative_code_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)) + ((dst_negative_scale_padded_prefixtable) + (dst_negative_scale_padded_prefixtable))) + (((dst_negative_code_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)) * S ((dst_negative_code_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)) + ((dst_negative_scale_padded_prefixtable) + (dst_negative_scale_padded_prefixtable)))))) /\ (forall dst_index_padded_prefixtable. (exists pvs_le_gap_padded_prefixtabledomain. pvs_le_gap_padded_prefixtabledomain + (dst_index_padded_prefixtable) = (L)) -> exists dst_positive_padded_prefixtable dst_negative_padded_prefixtable dst_value_padded_prefixtable. ((((exists ff_h_pvs_padded_prefixtableentrypositive. ff_h_pvs_padded_prefixtableentrypositive + S (dst_positive_padded_prefixtable) = S ((S (dst_index_padded_prefixtable)) * dst_positive_scale_padded_prefixtable)) /\ exists ff_q_pvs_padded_prefixtableentrypositive. dst_positive_code_padded_prefixtable = ff_q_pvs_padded_prefixtableentrypositive * S ((S (dst_index_padded_prefixtable)) * dst_positive_scale_padded_prefixtable) + (dst_positive_padded_prefixtable))) /\ (((((exists ff_h_pvs_padded_prefixtableentrynegative. ff_h_pvs_padded_prefixtableentrynegative + S (dst_negative_padded_prefixtable) = S ((S (dst_index_padded_prefixtable)) * dst_negative_scale_padded_prefixtable)) /\ exists ff_q_pvs_padded_prefixtableentrynegative. dst_negative_code_padded_prefixtable = ff_q_pvs_padded_prefixtableentrynegative * S ((S (dst_index_padded_prefixtable)) * dst_negative_scale_padded_prefixtable) + (dst_negative_padded_prefixtable))) /\ (exists ge_balance_positive_padded_prefixtableentryvalue ge_balance_negative_padded_prefixtableentryvalue. (((((dst_value_padded_prefixtable) = 2 * (ge_balance_positive_padded_prefixtableentryvalue) /\ (ge_balance_negative_padded_prefixtableentryvalue) = 0) \/ exists ge_signed_half_padded_prefixtableentryvaluedecode. (((dst_value_padded_prefixtable) = 2 * ge_signed_half_padded_prefixtableentryvaluedecode + 1 /\ (ge_balance_positive_padded_prefixtableentryvalue) = 0) /\ (ge_balance_negative_padded_prefixtableentryvalue) = S ge_signed_half_padded_prefixtableentryvaluedecode))) /\ ((dst_positive_padded_prefixtable) + ge_balance_negative_padded_prefixtableentryvalue = (dst_negative_padded_prefixtable) + ge_balance_positive_padded_prefixtableentryvalue))))))))) /\ (forall dc_index_padded_prefix dc_value_padded_prefix. (exists pvs_le_gap_padded_prefixdomain. pvs_le_gap_padded_prefixdomain + (dc_index_padded_prefix) = (L)) -> (exists dst_positive_code_padded_prefixlookup dst_positive_scale_padded_prefixlookup dst_negative_code_padded_prefixlookup dst_negative_scale_padded_prefixlookup dst_positive_padded_prefixlookup dst_negative_padded_prefixlookup. (((M) = (((((dst_positive_code_padded_prefixlookup) + (dst_positive_scale_padded_prefixlookup)) * S ((dst_positive_code_padded_prefixlookup) + (dst_positive_scale_padded_prefixlookup)) + ((dst_positive_scale_padded_prefixlookup) + (dst_positive_scale_padded_prefixlookup))) + (((dst_negative_code_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)) * S ((dst_negative_code_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)) + ((dst_negative_scale_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)))) * S ((((dst_positive_code_padded_prefixlookup) + (dst_positive_scale_padded_prefixlookup)) * S ((dst_positive_code_padded_prefixlookup) + (dst_positive_scale_padded_prefixlookup)) + ((dst_positive_scale_padded_prefixlookup) + (dst_positive_scale_padded_prefixlookup))) + (((dst_negative_code_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)) * S ((dst_negative_code_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)) + ((dst_negative_scale_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)))) + ((((dst_negative_code_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)) * S ((dst_negative_code_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)) + ((dst_negative_scale_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup))) + (((dst_negative_code_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)) * S ((dst_negative_code_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)) + ((dst_negative_scale_padded_prefixlookup) + (dst_negative_scale_padded_prefixlookup)))))) /\ (((((exists ff_h_pvs_padded_prefixlookuppositive. ff_h_pvs_padded_prefixlookuppositive + S (dst_positive_padded_prefixlookup) = S ((S (dc_index_padded_prefix)) * dst_positive_scale_padded_prefixlookup)) /\ exists ff_q_pvs_padded_prefixlookuppositive. dst_positive_code_padded_prefixlookup = ff_q_pvs_padded_prefixlookuppositive * S ((S (dc_index_padded_prefix)) * dst_positive_scale_padded_prefixlookup) + (dst_positive_padded_prefixlookup))) /\ (((((exists ff_h_pvs_padded_prefixlookupnegative. ff_h_pvs_padded_prefixlookupnegative + S (dst_negative_padded_prefixlookup) = S ((S (dc_index_padded_prefix)) * dst_negative_scale_padded_prefixlookup)) /\ exists ff_q_pvs_padded_prefixlookupnegative. dst_negative_code_padded_prefixlookup = ff_q_pvs_padded_prefixlookupnegative * S ((S (dc_index_padded_prefix)) * dst_negative_scale_padded_prefixlookup) + (dst_negative_padded_prefixlookup))) /\ (exists ge_balance_positive_padded_prefixlookupvalue ge_balance_negative_padded_prefixlookupvalue. (((((dc_value_padded_prefix) = 2 * (ge_balance_positive_padded_prefixlookupvalue) /\ (ge_balance_negative_padded_prefixlookupvalue) = 0) \/ exists ge_signed_half_padded_prefixlookupvaluedecode. (((dc_value_padded_prefix) = 2 * ge_signed_half_padded_prefixlookupvaluedecode + 1 /\ (ge_balance_positive_padded_prefixlookupvalue) = 0) /\ (ge_balance_negative_padded_prefixlookupvalue) = S ge_signed_half_padded_prefixlookupvaluedecode))) /\ ((dst_positive_padded_prefixlookup) + ge_balance_negative_padded_prefixlookupvalue = (dst_negative_padded_prefixlookup) + ge_balance_positive_padded_prefixlookupvalue))))))))) -> ((((~((dc_index_padded_prefix)=0)) /\ (exists dc_quotient_padded_prefixentry dc_left_padded_prefixentry dc_right_padded_prefixentry. (((n)=(dc_index_padded_prefix)*dc_quotient_padded_prefixentry) /\ (((exists dst_positive_code_padded_prefixentryleft dst_positive_scale_padded_prefixentryleft dst_negative_code_padded_prefixentryleft dst_negative_scale_padded_prefixentryleft dst_positive_padded_prefixentryleft dst_negative_padded_prefixentryleft. (((F) = (((((dst_positive_code_padded_prefixentryleft) + (dst_positive_scale_padded_prefixentryleft)) * S ((dst_positive_code_padded_prefixentryleft) + (dst_positive_scale_padded_prefixentryleft)) + ((dst_positive_scale_padded_prefixentryleft) + (dst_positive_scale_padded_prefixentryleft))) + (((dst_negative_code_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)) * S ((dst_negative_code_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)) + ((dst_negative_scale_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)))) * S ((((dst_positive_code_padded_prefixentryleft) + (dst_positive_scale_padded_prefixentryleft)) * S ((dst_positive_code_padded_prefixentryleft) + (dst_positive_scale_padded_prefixentryleft)) + ((dst_positive_scale_padded_prefixentryleft) + (dst_positive_scale_padded_prefixentryleft))) + (((dst_negative_code_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)) * S ((dst_negative_code_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)) + ((dst_negative_scale_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)))) + ((((dst_negative_code_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)) * S ((dst_negative_code_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)) + ((dst_negative_scale_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft))) + (((dst_negative_code_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)) * S ((dst_negative_code_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)) + ((dst_negative_scale_padded_prefixentryleft) + (dst_negative_scale_padded_prefixentryleft)))))) /\ (((((exists ff_h_pvs_padded_prefixentryleftpositive. ff_h_pvs_padded_prefixentryleftpositive + S (dst_positive_padded_prefixentryleft) = S ((S (dc_index_padded_prefix)) * dst_positive_scale_padded_prefixentryleft)) /\ exists ff_q_pvs_padded_prefixentryleftpositive. dst_positive_code_padded_prefixentryleft = ff_q_pvs_padded_prefixentryleftpositive * S ((S (dc_index_padded_prefix)) * dst_positive_scale_padded_prefixentryleft) + (dst_positive_padded_prefixentryleft))) /\ (((((exists ff_h_pvs_padded_prefixentryleftnegative. ff_h_pvs_padded_prefixentryleftnegative + S (dst_negative_padded_prefixentryleft) = S ((S (dc_index_padded_prefix)) * dst_negative_scale_padded_prefixentryleft)) /\ exists ff_q_pvs_padded_prefixentryleftnegative. dst_negative_code_padded_prefixentryleft = ff_q_pvs_padded_prefixentryleftnegative * S ((S (dc_index_padded_prefix)) * dst_negative_scale_padded_prefixentryleft) + (dst_negative_padded_prefixentryleft))) /\ (exists ge_balance_positive_padded_prefixentryleftvalue ge_balance_negative_padded_prefixentryleftvalue. (((((dc_left_padded_prefixentry) = 2 * (ge_balance_positive_padded_prefixentryleftvalue) /\ (ge_balance_negative_padded_prefixentryleftvalue) = 0) \/ exists ge_signed_half_padded_prefixentryleftvaluedecode. (((dc_left_padded_prefixentry) = 2 * ge_signed_half_padded_prefixentryleftvaluedecode + 1 /\ (ge_balance_positive_padded_prefixentryleftvalue) = 0) /\ (ge_balance_negative_padded_prefixentryleftvalue) = S ge_signed_half_padded_prefixentryleftvaluedecode))) /\ ((dst_positive_padded_prefixentryleft) + ge_balance_negative_padded_prefixentryleftvalue = (dst_negative_padded_prefixentryleft) + ge_balance_positive_padded_prefixentryleftvalue))))))))) /\ (((exists dst_positive_code_padded_prefixentryright dst_positive_scale_padded_prefixentryright dst_negative_code_padded_prefixentryright dst_negative_scale_padded_prefixentryright dst_positive_padded_prefixentryright dst_negative_padded_prefixentryright. (((G) = (((((dst_positive_code_padded_prefixentryright) + (dst_positive_scale_padded_prefixentryright)) * S ((dst_positive_code_padded_prefixentryright) + (dst_positive_scale_padded_prefixentryright)) + ((dst_positive_scale_padded_prefixentryright) + (dst_positive_scale_padded_prefixentryright))) + (((dst_negative_code_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)) * S ((dst_negative_code_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)) + ((dst_negative_scale_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)))) * S ((((dst_positive_code_padded_prefixentryright) + (dst_positive_scale_padded_prefixentryright)) * S ((dst_positive_code_padded_prefixentryright) + (dst_positive_scale_padded_prefixentryright)) + ((dst_positive_scale_padded_prefixentryright) + (dst_positive_scale_padded_prefixentryright))) + (((dst_negative_code_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)) * S ((dst_negative_code_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)) + ((dst_negative_scale_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)))) + ((((dst_negative_code_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)) * S ((dst_negative_code_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)) + ((dst_negative_scale_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright))) + (((dst_negative_code_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)) * S ((dst_negative_code_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)) + ((dst_negative_scale_padded_prefixentryright) + (dst_negative_scale_padded_prefixentryright)))))) /\ (((((exists ff_h_pvs_padded_prefixentryrightpositive. ff_h_pvs_padded_prefixentryrightpositive + S (dst_positive_padded_prefixentryright) = S ((S (dc_quotient_padded_prefixentry)) * dst_positive_scale_padded_prefixentryright)) /\ exists ff_q_pvs_padded_prefixentryrightpositive. dst_positive_code_padded_prefixentryright = ff_q_pvs_padded_prefixentryrightpositive * S ((S (dc_quotient_padded_prefixentry)) * dst_positive_scale_padded_prefixentryright) + (dst_positive_padded_prefixentryright))) /\ (((((exists ff_h_pvs_padded_prefixentryrightnegative. ff_h_pvs_padded_prefixentryrightnegative + S (dst_negative_padded_prefixentryright) = S ((S (dc_quotient_padded_prefixentry)) * dst_negative_scale_padded_prefixentryright)) /\ exists ff_q_pvs_padded_prefixentryrightnegative. dst_negative_code_padded_prefixentryright = ff_q_pvs_padded_prefixentryrightnegative * S ((S (dc_quotient_padded_prefixentry)) * dst_negative_scale_padded_prefixentryright) + (dst_negative_padded_prefixentryright))) /\ (exists ge_balance_positive_padded_prefixentryrightvalue ge_balance_negative_padded_prefixentryrightvalue. (((((dc_right_padded_prefixentry) = 2 * (ge_balance_positive_padded_prefixentryrightvalue) /\ (ge_balance_negative_padded_prefixentryrightvalue) = 0) \/ exists ge_signed_half_padded_prefixentryrightvaluedecode. (((dc_right_padded_prefixentry) = 2 * ge_signed_half_padded_prefixentryrightvaluedecode + 1 /\ (ge_balance_positive_padded_prefixentryrightvalue) = 0) /\ (ge_balance_negative_padded_prefixentryrightvalue) = S ge_signed_half_padded_prefixentryrightvaluedecode))) /\ ((dst_positive_padded_prefixentryright) + ge_balance_negative_padded_prefixentryrightvalue = (dst_negative_padded_prefixentryright) + ge_balance_positive_padded_prefixentryrightvalue))))))))) /\ (exists sto_ap_padded_prefixentryproduct sto_an_padded_prefixentryproduct sto_bp_padded_prefixentryproduct sto_bn_padded_prefixentryproduct sto_cp_padded_prefixentryproduct sto_cn_padded_prefixentryproduct. (((((dc_left_padded_prefixentry) = 2 * (sto_ap_padded_prefixentryproduct) /\ (sto_an_padded_prefixentryproduct) = 0) \/ exists ge_signed_half_padded_prefixentryproductleft. (((dc_left_padded_prefixentry) = 2 * ge_signed_half_padded_prefixentryproductleft + 1 /\ (sto_ap_padded_prefixentryproduct) = 0) /\ (sto_an_padded_prefixentryproduct) = S ge_signed_half_padded_prefixentryproductleft))) /\ ((((((dc_right_padded_prefixentry) = 2 * (sto_bp_padded_prefixentryproduct) /\ (sto_bn_padded_prefixentryproduct) = 0) \/ exists ge_signed_half_padded_prefixentryproductright. (((dc_right_padded_prefixentry) = 2 * ge_signed_half_padded_prefixentryproductright + 1 /\ (sto_bp_padded_prefixentryproduct) = 0) /\ (sto_bn_padded_prefixentryproduct) = S ge_signed_half_padded_prefixentryproductright))) /\ ((((((dc_value_padded_prefix) = 2 * (sto_cp_padded_prefixentryproduct) /\ (sto_cn_padded_prefixentryproduct) = 0) \/ exists ge_signed_half_padded_prefixentryproductoutput. (((dc_value_padded_prefix) = 2 * ge_signed_half_padded_prefixentryproductoutput + 1 /\ (sto_cp_padded_prefixentryproduct) = 0) /\ (sto_cn_padded_prefixentryproduct) = S ge_signed_half_padded_prefixentryproductoutput))) /\ ((sto_ap_padded_prefixentryproduct * sto_bp_padded_prefixentryproduct + sto_an_padded_prefixentryproduct * sto_bn_padded_prefixentryproduct) + sto_cn_padded_prefixentryproduct = (sto_ap_padded_prefixentryproduct * sto_bn_padded_prefixentryproduct + sto_an_padded_prefixentryproduct * sto_bp_padded_prefixentryproduct) + sto_cp_padded_prefixentryproduct))))))))))))))) \/ ((((dc_index_padded_prefix)=0 \/ ~(exists pvs_factor_padded_prefixentrynondivisor. (n) = (dc_index_padded_prefix) * pvs_factor_padded_prefixentrynondivisor)) /\ ((dc_value_padded_prefix)=0))))))) -> (exists dst_positive_code_padded_sum dst_positive_scale_padded_sum dst_negative_code_padded_sum dst_negative_scale_padded_sum dst_positive_sum_padded_sum dst_negative_sum_padded_sum. (((M) = (((((dst_positive_code_padded_sum) + (dst_positive_scale_padded_sum)) * S ((dst_positive_code_padded_sum) + (dst_positive_scale_padded_sum)) + ((dst_positive_scale_padded_sum) + (dst_positive_scale_padded_sum))) + (((dst_negative_code_padded_sum) + (dst_negative_scale_padded_sum)) * S ((dst_negative_code_padded_sum) + (dst_negative_scale_padded_sum)) + ((dst_negative_scale_padded_sum) + (dst_negative_scale_padded_sum)))) * S ((((dst_positive_code_padded_sum) + (dst_positive_scale_padded_sum)) * S ((dst_positive_code_padded_sum) + (dst_positive_scale_padded_sum)) + ((dst_positive_scale_padded_sum) + (dst_positive_scale_padded_sum))) + (((dst_negative_code_padded_sum) + (dst_negative_scale_padded_sum)) * S ((dst_negative_code_padded_sum) + (dst_negative_scale_padded_sum)) + ((dst_negative_scale_padded_sum) + (dst_negative_scale_padded_sum)))) + ((((dst_negative_code_padded_sum) + (dst_negative_scale_padded_sum)) * S ((dst_negative_code_padded_sum) + (dst_negative_scale_padded_sum)) + ((dst_negative_scale_padded_sum) + (dst_negative_scale_padded_sum))) + (((dst_negative_code_padded_sum) + (dst_negative_scale_padded_sum)) * S ((dst_negative_code_padded_sum) + (dst_negative_scale_padded_sum)) + ((dst_negative_scale_padded_sum) + (dst_negative_scale_padded_sum)))))) /\ (((exists fs_u_dst_padded_sumpositive fs_v_dst_padded_sumpositive. ((((exists fs_h_dst_padded_sumpositive_body_start. fs_h_dst_padded_sumpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_padded_sumpositive)) /\ exists fs_q_dst_padded_sumpositive_body_start. fs_u_dst_padded_sumpositive = fs_q_dst_padded_sumpositive_body_start * S ((S (0)) * fs_v_dst_padded_sumpositive) + (0))) /\ ((((exists fs_h_dst_padded_sumpositive_body_terminal. fs_h_dst_padded_sumpositive_body_terminal + S (dst_positive_sum_padded_sum) = S ((S (S L)) * fs_v_dst_padded_sumpositive)) /\ exists fs_q_dst_padded_sumpositive_body_terminal. fs_u_dst_padded_sumpositive = fs_q_dst_padded_sumpositive_body_terminal * S ((S (S L)) * fs_v_dst_padded_sumpositive) + (dst_positive_sum_padded_sum))) /\ forall fs_i_dst_padded_sumpositive_body_steps. (exists fs_lt_dst_padded_sumpositive_body_steps_bound. fs_lt_dst_padded_sumpositive_body_steps_bound + S fs_i_dst_padded_sumpositive_body_steps = S L) -> exists fs_a_dst_padded_sumpositive_body_steps fs_r_dst_padded_sumpositive_body_steps fs_s_dst_padded_sumpositive_body_steps. ((((exists fs_h_dst_padded_sumpositive_body_steps_summand. fs_h_dst_padded_sumpositive_body_steps_summand + S (fs_a_dst_padded_sumpositive_body_steps) = S ((S (fs_i_dst_padded_sumpositive_body_steps)) * dst_positive_scale_padded_sum)) /\ exists fs_q_dst_padded_sumpositive_body_steps_summand. dst_positive_code_padded_sum = fs_q_dst_padded_sumpositive_body_steps_summand * S ((S (fs_i_dst_padded_sumpositive_body_steps)) * dst_positive_scale_padded_sum) + (fs_a_dst_padded_sumpositive_body_steps))) /\ ((((exists fs_h_dst_padded_sumpositive_body_steps_partial. fs_h_dst_padded_sumpositive_body_steps_partial + S (fs_r_dst_padded_sumpositive_body_steps) = S ((S (fs_i_dst_padded_sumpositive_body_steps)) * fs_v_dst_padded_sumpositive)) /\ exists fs_q_dst_padded_sumpositive_body_steps_partial. fs_u_dst_padded_sumpositive = fs_q_dst_padded_sumpositive_body_steps_partial * S ((S (fs_i_dst_padded_sumpositive_body_steps)) * fs_v_dst_padded_sumpositive) + (fs_r_dst_padded_sumpositive_body_steps))) /\ ((((exists fs_h_dst_padded_sumpositive_body_steps_successor. fs_h_dst_padded_sumpositive_body_steps_successor + S (fs_s_dst_padded_sumpositive_body_steps) = S ((S (S fs_i_dst_padded_sumpositive_body_steps)) * fs_v_dst_padded_sumpositive)) /\ exists fs_q_dst_padded_sumpositive_body_steps_successor. fs_u_dst_padded_sumpositive = fs_q_dst_padded_sumpositive_body_steps_successor * S ((S (S fs_i_dst_padded_sumpositive_body_steps)) * fs_v_dst_padded_sumpositive) + (fs_s_dst_padded_sumpositive_body_steps))) /\ fs_s_dst_padded_sumpositive_body_steps = fs_r_dst_padded_sumpositive_body_steps + fs_a_dst_padded_sumpositive_body_steps)))))) /\ (((exists fs_u_dst_padded_sumnegative fs_v_dst_padded_sumnegative. ((((exists fs_h_dst_padded_sumnegative_body_start. fs_h_dst_padded_sumnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_padded_sumnegative)) /\ exists fs_q_dst_padded_sumnegative_body_start. fs_u_dst_padded_sumnegative = fs_q_dst_padded_sumnegative_body_start * S ((S (0)) * fs_v_dst_padded_sumnegative) + (0))) /\ ((((exists fs_h_dst_padded_sumnegative_body_terminal. fs_h_dst_padded_sumnegative_body_terminal + S (dst_negative_sum_padded_sum) = S ((S (S L)) * fs_v_dst_padded_sumnegative)) /\ exists fs_q_dst_padded_sumnegative_body_terminal. fs_u_dst_padded_sumnegative = fs_q_dst_padded_sumnegative_body_terminal * S ((S (S L)) * fs_v_dst_padded_sumnegative) + (dst_negative_sum_padded_sum))) /\ forall fs_i_dst_padded_sumnegative_body_steps. (exists fs_lt_dst_padded_sumnegative_body_steps_bound. fs_lt_dst_padded_sumnegative_body_steps_bound + S fs_i_dst_padded_sumnegative_body_steps = S L) -> exists fs_a_dst_padded_sumnegative_body_steps fs_r_dst_padded_sumnegative_body_steps fs_s_dst_padded_sumnegative_body_steps. ((((exists fs_h_dst_padded_sumnegative_body_steps_summand. fs_h_dst_padded_sumnegative_body_steps_summand + S (fs_a_dst_padded_sumnegative_body_steps) = S ((S (fs_i_dst_padded_sumnegative_body_steps)) * dst_negative_scale_padded_sum)) /\ exists fs_q_dst_padded_sumnegative_body_steps_summand. dst_negative_code_padded_sum = fs_q_dst_padded_sumnegative_body_steps_summand * S ((S (fs_i_dst_padded_sumnegative_body_steps)) * dst_negative_scale_padded_sum) + (fs_a_dst_padded_sumnegative_body_steps))) /\ ((((exists fs_h_dst_padded_sumnegative_body_steps_partial. fs_h_dst_padded_sumnegative_body_steps_partial + S (fs_r_dst_padded_sumnegative_body_steps) = S ((S (fs_i_dst_padded_sumnegative_body_steps)) * fs_v_dst_padded_sumnegative)) /\ exists fs_q_dst_padded_sumnegative_body_steps_partial. fs_u_dst_padded_sumnegative = fs_q_dst_padded_sumnegative_body_steps_partial * S ((S (fs_i_dst_padded_sumnegative_body_steps)) * fs_v_dst_padded_sumnegative) + (fs_r_dst_padded_sumnegative_body_steps))) /\ ((((exists fs_h_dst_padded_sumnegative_body_steps_successor. fs_h_dst_padded_sumnegative_body_steps_successor + S (fs_s_dst_padded_sumnegative_body_steps) = S ((S (S fs_i_dst_padded_sumnegative_body_steps)) * fs_v_dst_padded_sumnegative)) /\ exists fs_q_dst_padded_sumnegative_body_steps_successor. fs_u_dst_padded_sumnegative = fs_q_dst_padded_sumnegative_body_steps_successor * S ((S (S fs_i_dst_padded_sumnegative_body_steps)) * fs_v_dst_padded_sumnegative) + (fs_s_dst_padded_sumnegative_body_steps))) /\ fs_s_dst_padded_sumnegative_body_steps = fs_r_dst_padded_sumnegative_body_steps + fs_a_dst_padded_sumnegative_body_steps)))))) /\ (exists ge_balance_positive_padded_sumresult ge_balance_negative_padded_sumresult. (((((z) = 2 * (ge_balance_positive_padded_sumresult) /\ (ge_balance_negative_padded_sumresult) = 0) \/ exists ge_signed_half_padded_sumresultdecode. (((z) = 2 * ge_signed_half_padded_sumresultdecode + 1 /\ (ge_balance_positive_padded_sumresult) = 0) /\ (ge_balance_negative_padded_sumresult) = S ge_signed_half_padded_sumresultdecode))) /\ ((dst_positive_sum_padded_sum) + ge_balance_negative_padded_sumresult = (dst_negative_sum_padded_sum) + ge_balance_positive_padded_sumresult))))))))) -> (((~((n)=0)) /\ (exists dc_mask_padded_result. ((((exists dst_positive_code_padded_resultmasktable dst_positive_scale_padded_resultmasktable dst_negative_code_padded_resultmasktable dst_negative_scale_padded_resultmasktable. (((dc_mask_padded_result) = (((((dst_positive_code_padded_resultmasktable) + (dst_positive_scale_padded_resultmasktable)) * S ((dst_positive_code_padded_resultmasktable) + (dst_positive_scale_padded_resultmasktable)) + ((dst_positive_scale_padded_resultmasktable) + (dst_positive_scale_padded_resultmasktable))) + (((dst_negative_code_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)) * S ((dst_negative_code_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)) + ((dst_negative_scale_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)))) * S ((((dst_positive_code_padded_resultmasktable) + (dst_positive_scale_padded_resultmasktable)) * S ((dst_positive_code_padded_resultmasktable) + (dst_positive_scale_padded_resultmasktable)) + ((dst_positive_scale_padded_resultmasktable) + (dst_positive_scale_padded_resultmasktable))) + (((dst_negative_code_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)) * S ((dst_negative_code_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)) + ((dst_negative_scale_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)))) + ((((dst_negative_code_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)) * S ((dst_negative_code_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)) + ((dst_negative_scale_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable))) + (((dst_negative_code_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)) * S ((dst_negative_code_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)) + ((dst_negative_scale_padded_resultmasktable) + (dst_negative_scale_padded_resultmasktable)))))) /\ (forall dst_index_padded_resultmasktable. (exists pvs_le_gap_padded_resultmasktabledomain. pvs_le_gap_padded_resultmasktabledomain + (dst_index_padded_resultmasktable) = (n)) -> exists dst_positive_padded_resultmasktable dst_negative_padded_resultmasktable dst_value_padded_resultmasktable. ((((exists ff_h_pvs_padded_resultmasktableentrypositive. ff_h_pvs_padded_resultmasktableentrypositive + S (dst_positive_padded_resultmasktable) = S ((S (dst_index_padded_resultmasktable)) * dst_positive_scale_padded_resultmasktable)) /\ exists ff_q_pvs_padded_resultmasktableentrypositive. dst_positive_code_padded_resultmasktable = ff_q_pvs_padded_resultmasktableentrypositive * S ((S (dst_index_padded_resultmasktable)) * dst_positive_scale_padded_resultmasktable) + (dst_positive_padded_resultmasktable))) /\ (((((exists ff_h_pvs_padded_resultmasktableentrynegative. ff_h_pvs_padded_resultmasktableentrynegative + S (dst_negative_padded_resultmasktable) = S ((S (dst_index_padded_resultmasktable)) * dst_negative_scale_padded_resultmasktable)) /\ exists ff_q_pvs_padded_resultmasktableentrynegative. dst_negative_code_padded_resultmasktable = ff_q_pvs_padded_resultmasktableentrynegative * S ((S (dst_index_padded_resultmasktable)) * dst_negative_scale_padded_resultmasktable) + (dst_negative_padded_resultmasktable))) /\ (exists ge_balance_positive_padded_resultmasktableentryvalue ge_balance_negative_padded_resultmasktableentryvalue. (((((dst_value_padded_resultmasktable) = 2 * (ge_balance_positive_padded_resultmasktableentryvalue) /\ (ge_balance_negative_padded_resultmasktableentryvalue) = 0) \/ exists ge_signed_half_padded_resultmasktableentryvaluedecode. (((dst_value_padded_resultmasktable) = 2 * ge_signed_half_padded_resultmasktableentryvaluedecode + 1 /\ (ge_balance_positive_padded_resultmasktableentryvalue) = 0) /\ (ge_balance_negative_padded_resultmasktableentryvalue) = S ge_signed_half_padded_resultmasktableentryvaluedecode))) /\ ((dst_positive_padded_resultmasktable) + ge_balance_negative_padded_resultmasktableentryvalue = (dst_negative_padded_resultmasktable) + ge_balance_positive_padded_resultmasktableentryvalue))))))))) /\ (forall dc_index_padded_resultmask dc_value_padded_resultmask. (exists pvs_le_gap_padded_resultmaskdomain. pvs_le_gap_padded_resultmaskdomain + (dc_index_padded_resultmask) = (n)) -> (exists dst_positive_code_padded_resultmasklookup dst_positive_scale_padded_resultmasklookup dst_negative_code_padded_resultmasklookup dst_negative_scale_padded_resultmasklookup dst_positive_padded_resultmasklookup dst_negative_padded_resultmasklookup. (((dc_mask_padded_result) = (((((dst_positive_code_padded_resultmasklookup) + (dst_positive_scale_padded_resultmasklookup)) * S ((dst_positive_code_padded_resultmasklookup) + (dst_positive_scale_padded_resultmasklookup)) + ((dst_positive_scale_padded_resultmasklookup) + (dst_positive_scale_padded_resultmasklookup))) + (((dst_negative_code_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)) * S ((dst_negative_code_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)) + ((dst_negative_scale_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)))) * S ((((dst_positive_code_padded_resultmasklookup) + (dst_positive_scale_padded_resultmasklookup)) * S ((dst_positive_code_padded_resultmasklookup) + (dst_positive_scale_padded_resultmasklookup)) + ((dst_positive_scale_padded_resultmasklookup) + (dst_positive_scale_padded_resultmasklookup))) + (((dst_negative_code_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)) * S ((dst_negative_code_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)) + ((dst_negative_scale_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)))) + ((((dst_negative_code_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)) * S ((dst_negative_code_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)) + ((dst_negative_scale_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup))) + (((dst_negative_code_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)) * S ((dst_negative_code_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)) + ((dst_negative_scale_padded_resultmasklookup) + (dst_negative_scale_padded_resultmasklookup)))))) /\ (((((exists ff_h_pvs_padded_resultmasklookuppositive. ff_h_pvs_padded_resultmasklookuppositive + S (dst_positive_padded_resultmasklookup) = S ((S (dc_index_padded_resultmask)) * dst_positive_scale_padded_resultmasklookup)) /\ exists ff_q_pvs_padded_resultmasklookuppositive. dst_positive_code_padded_resultmasklookup = ff_q_pvs_padded_resultmasklookuppositive * S ((S (dc_index_padded_resultmask)) * dst_positive_scale_padded_resultmasklookup) + (dst_positive_padded_resultmasklookup))) /\ (((((exists ff_h_pvs_padded_resultmasklookupnegative. ff_h_pvs_padded_resultmasklookupnegative + S (dst_negative_padded_resultmasklookup) = S ((S (dc_index_padded_resultmask)) * dst_negative_scale_padded_resultmasklookup)) /\ exists ff_q_pvs_padded_resultmasklookupnegative. dst_negative_code_padded_resultmasklookup = ff_q_pvs_padded_resultmasklookupnegative * S ((S (dc_index_padded_resultmask)) * dst_negative_scale_padded_resultmasklookup) + (dst_negative_padded_resultmasklookup))) /\ (exists ge_balance_positive_padded_resultmasklookupvalue ge_balance_negative_padded_resultmasklookupvalue. (((((dc_value_padded_resultmask) = 2 * (ge_balance_positive_padded_resultmasklookupvalue) /\ (ge_balance_negative_padded_resultmasklookupvalue) = 0) \/ exists ge_signed_half_padded_resultmasklookupvaluedecode. (((dc_value_padded_resultmask) = 2 * ge_signed_half_padded_resultmasklookupvaluedecode + 1 /\ (ge_balance_positive_padded_resultmasklookupvalue) = 0) /\ (ge_balance_negative_padded_resultmasklookupvalue) = S ge_signed_half_padded_resultmasklookupvaluedecode))) /\ ((dst_positive_padded_resultmasklookup) + ge_balance_negative_padded_resultmasklookupvalue = (dst_negative_padded_resultmasklookup) + ge_balance_positive_padded_resultmasklookupvalue))))))))) -> ((((~((dc_index_padded_resultmask)=0)) /\ (exists dc_quotient_padded_resultmaskentry dc_left_padded_resultmaskentry dc_right_padded_resultmaskentry. (((n)=(dc_index_padded_resultmask)*dc_quotient_padded_resultmaskentry) /\ (((exists dst_positive_code_padded_resultmaskentryleft dst_positive_scale_padded_resultmaskentryleft dst_negative_code_padded_resultmaskentryleft dst_negative_scale_padded_resultmaskentryleft dst_positive_padded_resultmaskentryleft dst_negative_padded_resultmaskentryleft. (((F) = (((((dst_positive_code_padded_resultmaskentryleft) + (dst_positive_scale_padded_resultmaskentryleft)) * S ((dst_positive_code_padded_resultmaskentryleft) + (dst_positive_scale_padded_resultmaskentryleft)) + ((dst_positive_scale_padded_resultmaskentryleft) + (dst_positive_scale_padded_resultmaskentryleft))) + (((dst_negative_code_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)) * S ((dst_negative_code_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)) + ((dst_negative_scale_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)))) * S ((((dst_positive_code_padded_resultmaskentryleft) + (dst_positive_scale_padded_resultmaskentryleft)) * S ((dst_positive_code_padded_resultmaskentryleft) + (dst_positive_scale_padded_resultmaskentryleft)) + ((dst_positive_scale_padded_resultmaskentryleft) + (dst_positive_scale_padded_resultmaskentryleft))) + (((dst_negative_code_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)) * S ((dst_negative_code_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)) + ((dst_negative_scale_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)))) + ((((dst_negative_code_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)) * S ((dst_negative_code_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)) + ((dst_negative_scale_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft))) + (((dst_negative_code_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)) * S ((dst_negative_code_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)) + ((dst_negative_scale_padded_resultmaskentryleft) + (dst_negative_scale_padded_resultmaskentryleft)))))) /\ (((((exists ff_h_pvs_padded_resultmaskentryleftpositive. ff_h_pvs_padded_resultmaskentryleftpositive + S (dst_positive_padded_resultmaskentryleft) = S ((S (dc_index_padded_resultmask)) * dst_positive_scale_padded_resultmaskentryleft)) /\ exists ff_q_pvs_padded_resultmaskentryleftpositive. dst_positive_code_padded_resultmaskentryleft = ff_q_pvs_padded_resultmaskentryleftpositive * S ((S (dc_index_padded_resultmask)) * dst_positive_scale_padded_resultmaskentryleft) + (dst_positive_padded_resultmaskentryleft))) /\ (((((exists ff_h_pvs_padded_resultmaskentryleftnegative. ff_h_pvs_padded_resultmaskentryleftnegative + S (dst_negative_padded_resultmaskentryleft) = S ((S (dc_index_padded_resultmask)) * dst_negative_scale_padded_resultmaskentryleft)) /\ exists ff_q_pvs_padded_resultmaskentryleftnegative. dst_negative_code_padded_resultmaskentryleft = ff_q_pvs_padded_resultmaskentryleftnegative * S ((S (dc_index_padded_resultmask)) * dst_negative_scale_padded_resultmaskentryleft) + (dst_negative_padded_resultmaskentryleft))) /\ (exists ge_balance_positive_padded_resultmaskentryleftvalue ge_balance_negative_padded_resultmaskentryleftvalue. (((((dc_left_padded_resultmaskentry) = 2 * (ge_balance_positive_padded_resultmaskentryleftvalue) /\ (ge_balance_negative_padded_resultmaskentryleftvalue) = 0) \/ exists ge_signed_half_padded_resultmaskentryleftvaluedecode. (((dc_left_padded_resultmaskentry) = 2 * ge_signed_half_padded_resultmaskentryleftvaluedecode + 1 /\ (ge_balance_positive_padded_resultmaskentryleftvalue) = 0) /\ (ge_balance_negative_padded_resultmaskentryleftvalue) = S ge_signed_half_padded_resultmaskentryleftvaluedecode))) /\ ((dst_positive_padded_resultmaskentryleft) + ge_balance_negative_padded_resultmaskentryleftvalue = (dst_negative_padded_resultmaskentryleft) + ge_balance_positive_padded_resultmaskentryleftvalue))))))))) /\ (((exists dst_positive_code_padded_resultmaskentryright dst_positive_scale_padded_resultmaskentryright dst_negative_code_padded_resultmaskentryright dst_negative_scale_padded_resultmaskentryright dst_positive_padded_resultmaskentryright dst_negative_padded_resultmaskentryright. (((G) = (((((dst_positive_code_padded_resultmaskentryright) + (dst_positive_scale_padded_resultmaskentryright)) * S ((dst_positive_code_padded_resultmaskentryright) + (dst_positive_scale_padded_resultmaskentryright)) + ((dst_positive_scale_padded_resultmaskentryright) + (dst_positive_scale_padded_resultmaskentryright))) + (((dst_negative_code_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)) * S ((dst_negative_code_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)) + ((dst_negative_scale_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)))) * S ((((dst_positive_code_padded_resultmaskentryright) + (dst_positive_scale_padded_resultmaskentryright)) * S ((dst_positive_code_padded_resultmaskentryright) + (dst_positive_scale_padded_resultmaskentryright)) + ((dst_positive_scale_padded_resultmaskentryright) + (dst_positive_scale_padded_resultmaskentryright))) + (((dst_negative_code_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)) * S ((dst_negative_code_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)) + ((dst_negative_scale_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)))) + ((((dst_negative_code_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)) * S ((dst_negative_code_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)) + ((dst_negative_scale_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright))) + (((dst_negative_code_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)) * S ((dst_negative_code_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)) + ((dst_negative_scale_padded_resultmaskentryright) + (dst_negative_scale_padded_resultmaskentryright)))))) /\ (((((exists ff_h_pvs_padded_resultmaskentryrightpositive. ff_h_pvs_padded_resultmaskentryrightpositive + S (dst_positive_padded_resultmaskentryright) = S ((S (dc_quotient_padded_resultmaskentry)) * dst_positive_scale_padded_resultmaskentryright)) /\ exists ff_q_pvs_padded_resultmaskentryrightpositive. dst_positive_code_padded_resultmaskentryright = ff_q_pvs_padded_resultmaskentryrightpositive * S ((S (dc_quotient_padded_resultmaskentry)) * dst_positive_scale_padded_resultmaskentryright) + (dst_positive_padded_resultmaskentryright))) /\ (((((exists ff_h_pvs_padded_resultmaskentryrightnegative. ff_h_pvs_padded_resultmaskentryrightnegative + S (dst_negative_padded_resultmaskentryright) = S ((S (dc_quotient_padded_resultmaskentry)) * dst_negative_scale_padded_resultmaskentryright)) /\ exists ff_q_pvs_padded_resultmaskentryrightnegative. dst_negative_code_padded_resultmaskentryright = ff_q_pvs_padded_resultmaskentryrightnegative * S ((S (dc_quotient_padded_resultmaskentry)) * dst_negative_scale_padded_resultmaskentryright) + (dst_negative_padded_resultmaskentryright))) /\ (exists ge_balance_positive_padded_resultmaskentryrightvalue ge_balance_negative_padded_resultmaskentryrightvalue. (((((dc_right_padded_resultmaskentry) = 2 * (ge_balance_positive_padded_resultmaskentryrightvalue) /\ (ge_balance_negative_padded_resultmaskentryrightvalue) = 0) \/ exists ge_signed_half_padded_resultmaskentryrightvaluedecode. (((dc_right_padded_resultmaskentry) = 2 * ge_signed_half_padded_resultmaskentryrightvaluedecode + 1 /\ (ge_balance_positive_padded_resultmaskentryrightvalue) = 0) /\ (ge_balance_negative_padded_resultmaskentryrightvalue) = S ge_signed_half_padded_resultmaskentryrightvaluedecode))) /\ ((dst_positive_padded_resultmaskentryright) + ge_balance_negative_padded_resultmaskentryrightvalue = (dst_negative_padded_resultmaskentryright) + ge_balance_positive_padded_resultmaskentryrightvalue))))))))) /\ (exists sto_ap_padded_resultmaskentryproduct sto_an_padded_resultmaskentryproduct sto_bp_padded_resultmaskentryproduct sto_bn_padded_resultmaskentryproduct sto_cp_padded_resultmaskentryproduct sto_cn_padded_resultmaskentryproduct. (((((dc_left_padded_resultmaskentry) = 2 * (sto_ap_padded_resultmaskentryproduct) /\ (sto_an_padded_resultmaskentryproduct) = 0) \/ exists ge_signed_half_padded_resultmaskentryproductleft. (((dc_left_padded_resultmaskentry) = 2 * ge_signed_half_padded_resultmaskentryproductleft + 1 /\ (sto_ap_padded_resultmaskentryproduct) = 0) /\ (sto_an_padded_resultmaskentryproduct) = S ge_signed_half_padded_resultmaskentryproductleft))) /\ ((((((dc_right_padded_resultmaskentry) = 2 * (sto_bp_padded_resultmaskentryproduct) /\ (sto_bn_padded_resultmaskentryproduct) = 0) \/ exists ge_signed_half_padded_resultmaskentryproductright. (((dc_right_padded_resultmaskentry) = 2 * ge_signed_half_padded_resultmaskentryproductright + 1 /\ (sto_bp_padded_resultmaskentryproduct) = 0) /\ (sto_bn_padded_resultmaskentryproduct) = S ge_signed_half_padded_resultmaskentryproductright))) /\ ((((((dc_value_padded_resultmask) = 2 * (sto_cp_padded_resultmaskentryproduct) /\ (sto_cn_padded_resultmaskentryproduct) = 0) \/ exists ge_signed_half_padded_resultmaskentryproductoutput. (((dc_value_padded_resultmask) = 2 * ge_signed_half_padded_resultmaskentryproductoutput + 1 /\ (sto_cp_padded_resultmaskentryproduct) = 0) /\ (sto_cn_padded_resultmaskentryproduct) = S ge_signed_half_padded_resultmaskentryproductoutput))) /\ ((sto_ap_padded_resultmaskentryproduct * sto_bp_padded_resultmaskentryproduct + sto_an_padded_resultmaskentryproduct * sto_bn_padded_resultmaskentryproduct) + sto_cn_padded_resultmaskentryproduct = (sto_ap_padded_resultmaskentryproduct * sto_bn_padded_resultmaskentryproduct + sto_an_padded_resultmaskentryproduct * sto_bp_padded_resultmaskentryproduct) + sto_cp_padded_resultmaskentryproduct))))))))))))))) \/ ((((dc_index_padded_resultmask)=0 \/ ~(exists pvs_factor_padded_resultmaskentrynondivisor. (n) = (dc_index_padded_resultmask) * pvs_factor_padded_resultmaskentrynondivisor)) /\ ((dc_value_padded_resultmask)=0))))))) /\ (exists dst_positive_code_padded_resultfold dst_positive_scale_padded_resultfold dst_negative_code_padded_resultfold dst_negative_scale_padded_resultfold dst_positive_sum_padded_resultfold dst_negative_sum_padded_resultfold. (((dc_mask_padded_result) = (((((dst_positive_code_padded_resultfold) + (dst_positive_scale_padded_resultfold)) * S ((dst_positive_code_padded_resultfold) + (dst_positive_scale_padded_resultfold)) + ((dst_positive_scale_padded_resultfold) + (dst_positive_scale_padded_resultfold))) + (((dst_negative_code_padded_resultfold) + (dst_negative_scale_padded_resultfold)) * S ((dst_negative_code_padded_resultfold) + (dst_negative_scale_padded_resultfold)) + ((dst_negative_scale_padded_resultfold) + (dst_negative_scale_padded_resultfold)))) * S ((((dst_positive_code_padded_resultfold) + (dst_positive_scale_padded_resultfold)) * S ((dst_positive_code_padded_resultfold) + (dst_positive_scale_padded_resultfold)) + ((dst_positive_scale_padded_resultfold) + (dst_positive_scale_padded_resultfold))) + (((dst_negative_code_padded_resultfold) + (dst_negative_scale_padded_resultfold)) * S ((dst_negative_code_padded_resultfold) + (dst_negative_scale_padded_resultfold)) + ((dst_negative_scale_padded_resultfold) + (dst_negative_scale_padded_resultfold)))) + ((((dst_negative_code_padded_resultfold) + (dst_negative_scale_padded_resultfold)) * S ((dst_negative_code_padded_resultfold) + (dst_negative_scale_padded_resultfold)) + ((dst_negative_scale_padded_resultfold) + (dst_negative_scale_padded_resultfold))) + (((dst_negative_code_padded_resultfold) + (dst_negative_scale_padded_resultfold)) * S ((dst_negative_code_padded_resultfold) + (dst_negative_scale_padded_resultfold)) + ((dst_negative_scale_padded_resultfold) + (dst_negative_scale_padded_resultfold)))))) /\ (((exists fs_u_dst_padded_resultfoldpositive fs_v_dst_padded_resultfoldpositive. ((((exists fs_h_dst_padded_resultfoldpositive_body_start. fs_h_dst_padded_resultfoldpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_padded_resultfoldpositive)) /\ exists fs_q_dst_padded_resultfoldpositive_body_start. fs_u_dst_padded_resultfoldpositive = fs_q_dst_padded_resultfoldpositive_body_start * S ((S (0)) * fs_v_dst_padded_resultfoldpositive) + (0))) /\ ((((exists fs_h_dst_padded_resultfoldpositive_body_terminal. fs_h_dst_padded_resultfoldpositive_body_terminal + S (dst_positive_sum_padded_resultfold) = S ((S (S (n))) * fs_v_dst_padded_resultfoldpositive)) /\ exists fs_q_dst_padded_resultfoldpositive_body_terminal. fs_u_dst_padded_resultfoldpositive = fs_q_dst_padded_resultfoldpositive_body_terminal * S ((S (S (n))) * fs_v_dst_padded_resultfoldpositive) + (dst_positive_sum_padded_resultfold))) /\ forall fs_i_dst_padded_resultfoldpositive_body_steps. (exists fs_lt_dst_padded_resultfoldpositive_body_steps_bound. fs_lt_dst_padded_resultfoldpositive_body_steps_bound + S fs_i_dst_padded_resultfoldpositive_body_steps = S (n)) -> exists fs_a_dst_padded_resultfoldpositive_body_steps fs_r_dst_padded_resultfoldpositive_body_steps fs_s_dst_padded_resultfoldpositive_body_steps. ((((exists fs_h_dst_padded_resultfoldpositive_body_steps_summand. fs_h_dst_padded_resultfoldpositive_body_steps_summand + S (fs_a_dst_padded_resultfoldpositive_body_steps) = S ((S (fs_i_dst_padded_resultfoldpositive_body_steps)) * dst_positive_scale_padded_resultfold)) /\ exists fs_q_dst_padded_resultfoldpositive_body_steps_summand. dst_positive_code_padded_resultfold = fs_q_dst_padded_resultfoldpositive_body_steps_summand * S ((S (fs_i_dst_padded_resultfoldpositive_body_steps)) * dst_positive_scale_padded_resultfold) + (fs_a_dst_padded_resultfoldpositive_body_steps))) /\ ((((exists fs_h_dst_padded_resultfoldpositive_body_steps_partial. fs_h_dst_padded_resultfoldpositive_body_steps_partial + S (fs_r_dst_padded_resultfoldpositive_body_steps) = S ((S (fs_i_dst_padded_resultfoldpositive_body_steps)) * fs_v_dst_padded_resultfoldpositive)) /\ exists fs_q_dst_padded_resultfoldpositive_body_steps_partial. fs_u_dst_padded_resultfoldpositive = fs_q_dst_padded_resultfoldpositive_body_steps_partial * S ((S (fs_i_dst_padded_resultfoldpositive_body_steps)) * fs_v_dst_padded_resultfoldpositive) + (fs_r_dst_padded_resultfoldpositive_body_steps))) /\ ((((exists fs_h_dst_padded_resultfoldpositive_body_steps_successor. fs_h_dst_padded_resultfoldpositive_body_steps_successor + S (fs_s_dst_padded_resultfoldpositive_body_steps) = S ((S (S fs_i_dst_padded_resultfoldpositive_body_steps)) * fs_v_dst_padded_resultfoldpositive)) /\ exists fs_q_dst_padded_resultfoldpositive_body_steps_successor. fs_u_dst_padded_resultfoldpositive = fs_q_dst_padded_resultfoldpositive_body_steps_successor * S ((S (S fs_i_dst_padded_resultfoldpositive_body_steps)) * fs_v_dst_padded_resultfoldpositive) + (fs_s_dst_padded_resultfoldpositive_body_steps))) /\ fs_s_dst_padded_resultfoldpositive_body_steps = fs_r_dst_padded_resultfoldpositive_body_steps + fs_a_dst_padded_resultfoldpositive_body_steps)))))) /\ (((exists fs_u_dst_padded_resultfoldnegative fs_v_dst_padded_resultfoldnegative. ((((exists fs_h_dst_padded_resultfoldnegative_body_start. fs_h_dst_padded_resultfoldnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_padded_resultfoldnegative)) /\ exists fs_q_dst_padded_resultfoldnegative_body_start. fs_u_dst_padded_resultfoldnegative = fs_q_dst_padded_resultfoldnegative_body_start * S ((S (0)) * fs_v_dst_padded_resultfoldnegative) + (0))) /\ ((((exists fs_h_dst_padded_resultfoldnegative_body_terminal. fs_h_dst_padded_resultfoldnegative_body_terminal + S (dst_negative_sum_padded_resultfold) = S ((S (S (n))) * fs_v_dst_padded_resultfoldnegative)) /\ exists fs_q_dst_padded_resultfoldnegative_body_terminal. fs_u_dst_padded_resultfoldnegative = fs_q_dst_padded_resultfoldnegative_body_terminal * S ((S (S (n))) * fs_v_dst_padded_resultfoldnegative) + (dst_negative_sum_padded_resultfold))) /\ forall fs_i_dst_padded_resultfoldnegative_body_steps. (exists fs_lt_dst_padded_resultfoldnegative_body_steps_bound. fs_lt_dst_padded_resultfoldnegative_body_steps_bound + S fs_i_dst_padded_resultfoldnegative_body_steps = S (n)) -> exists fs_a_dst_padded_resultfoldnegative_body_steps fs_r_dst_padded_resultfoldnegative_body_steps fs_s_dst_padded_resultfoldnegative_body_steps. ((((exists fs_h_dst_padded_resultfoldnegative_body_steps_summand. fs_h_dst_padded_resultfoldnegative_body_steps_summand + S (fs_a_dst_padded_resultfoldnegative_body_steps) = S ((S (fs_i_dst_padded_resultfoldnegative_body_steps)) * dst_negative_scale_padded_resultfold)) /\ exists fs_q_dst_padded_resultfoldnegative_body_steps_summand. dst_negative_code_padded_resultfold = fs_q_dst_padded_resultfoldnegative_body_steps_summand * S ((S (fs_i_dst_padded_resultfoldnegative_body_steps)) * dst_negative_scale_padded_resultfold) + (fs_a_dst_padded_resultfoldnegative_body_steps))) /\ ((((exists fs_h_dst_padded_resultfoldnegative_body_steps_partial. fs_h_dst_padded_resultfoldnegative_body_steps_partial + S (fs_r_dst_padded_resultfoldnegative_body_steps) = S ((S (fs_i_dst_padded_resultfoldnegative_body_steps)) * fs_v_dst_padded_resultfoldnegative)) /\ exists fs_q_dst_padded_resultfoldnegative_body_steps_partial. fs_u_dst_padded_resultfoldnegative = fs_q_dst_padded_resultfoldnegative_body_steps_partial * S ((S (fs_i_dst_padded_resultfoldnegative_body_steps)) * fs_v_dst_padded_resultfoldnegative) + (fs_r_dst_padded_resultfoldnegative_body_steps))) /\ ((((exists fs_h_dst_padded_resultfoldnegative_body_steps_successor. fs_h_dst_padded_resultfoldnegative_body_steps_successor + S (fs_s_dst_padded_resultfoldnegative_body_steps) = S ((S (S fs_i_dst_padded_resultfoldnegative_body_steps)) * fs_v_dst_padded_resultfoldnegative)) /\ exists fs_q_dst_padded_resultfoldnegative_body_steps_successor. fs_u_dst_padded_resultfoldnegative = fs_q_dst_padded_resultfoldnegative_body_steps_successor * S ((S (S fs_i_dst_padded_resultfoldnegative_body_steps)) * fs_v_dst_padded_resultfoldnegative) + (fs_s_dst_padded_resultfoldnegative_body_steps))) /\ fs_s_dst_padded_resultfoldnegative_body_steps = fs_r_dst_padded_resultfoldnegative_body_steps + fs_a_dst_padded_resultfoldnegative_body_steps)))))) /\ (exists ge_balance_positive_padded_resultfoldresult ge_balance_negative_padded_resultfoldresult. (((((z) = 2 * (ge_balance_positive_padded_resultfoldresult) /\ (ge_balance_negative_padded_resultfoldresult) = 0) \/ exists ge_signed_half_padded_resultfoldresultdecode. (((z) = 2 * ge_signed_half_padded_resultfoldresultdecode + 1 /\ (ge_balance_positive_padded_resultfoldresult) = 0) /\ (ge_balance_negative_padded_resultfoldresult) = S ge_signed_half_padded_resultfoldresultdecode))) /\ ((dst_positive_sum_padded_resultfold) + ge_balance_negative_padded_resultfoldresult = (dst_negative_sum_padded_resultfold) + ge_balance_positive_padded_resultfoldresult)))))))))))))Constructive proof overview
Generated structural guide
An actual longer summand prefix computes the same convolution after its proved zero tail is removed.
The unchanged tactic script uses 5 declared prerequisites and contains 55 exact native proof lines.
Alpha v34 checked-use · first admitted v31 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
arithmetic_signed_sum_exists Alpha theorem; checked-use authorized signed_prefix_sum_zero_tail Alpha theorem; checked-use authorized succ_le_succ Stable theorem; checked-use authorized DC0026 dirichlet_convolution_prefix_zero_tail DC000D dirichlet_convolution_prefix_restrictDirect 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 (2)
01Fix variables and assumptionsL1–10
02Separate the logical casesL11–11
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L11
cases hp
03Establish hshortL12–17
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply arithmetic signed sum exists.
04Separate the logical casesL18–18
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L18
cases hshort
05Establish heL19–28
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed prefix sum zero tail.
- L19
have he : x=z - L20
specialize signed_prefix_sum_zero_tail (M) - L21
specialize signed_prefix_sum_zero_tail (S n) - L22
specialize signed_prefix_sum_zero_tail (S L) - L23
specialize signed_prefix_sum_zero_tail (x) - L24
specialize signed_prefix_sum_zero_tail (z) - L25
apply signed_prefix_sum_zero_tail - L26
specialize succ_le_succ (n) - L27
specialize succ_le_succ (L) - L28
apply succ_le_succ
06Use earlier factsL29–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L29
exact hbound - L30
specialize dirichlet_convolution_prefix_zero_tail (F) - L31
specialize dirichlet_convolution_prefix_zero_tail (G) - L32
specialize dirichlet_convolution_prefix_zero_tail (n) - L33
specialize dirichlet_convolution_prefix_zero_tail (L) - L34
specialize dirichlet_convolution_prefix_zero_tail (M) - L35
apply dirichlet_convolution_prefix_zero_tail - L36
exact hn - L37
exact hp - L38
exact hshort_witness
07Use earlier factsL39–39
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L39
exact hs
08Calculate and transport equalitiesL40–41
09Separate the logical casesL42–42
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
split
10Use earlier factsL43–43
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L43
exact hn
11Construct an explicit witnessL44–44
Supply the displayed value, then prove that it has the required property.
- L44
exists M
12Separate the logical casesL45–45
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L45
split
13Use earlier factsL46–55
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L46
specialize dirichlet_convolution_prefix_restrict (F) - L47
specialize dirichlet_convolution_prefix_restrict (G) - L48
specialize dirichlet_convolution_prefix_restrict (n) - L49
specialize dirichlet_convolution_prefix_restrict (L) - L50
specialize dirichlet_convolution_prefix_restrict (n) - L51
specialize dirichlet_convolution_prefix_restrict (M) - L52
apply dirichlet_convolution_prefix_restrict - L53
exact hp - L54
exact hbound - L55
exact hshort_witness
Original exact command ledger · 55 lines
- 0001
intro F - 0002
intro G - 0003
intro n - 0004
intro L - 0005
intro M - 0006
intro z - 0007
intro hn - 0008
intro hbound - 0009
intro hp - 0010
intro hs - 0011
cases hp - 0012
have hshort : exists a. (exists dst_positive_code_padded_actual_short dst_positive_scale_padded_actual_short dst_negative_code_padded_actual_short dst_negative_scale_padded_actual_short dst_positive_sum_padded_actual_short dst_negative_sum_padded_actual_short. (((M) = (((((dst_positive_code_padded_actual_short) + (dst_positive_scale_padded_actual_short)) * S ((dst_positive_code_padded_actual_short) + (dst_positive_scale_padded_actual_short)) + ((dst_positive_scale_padded_actual_short) + (dst_positive_scale_padded_actual_short))) + (((dst_negative_code_padded_actual_short) + (dst_negative_scale_padded_actual_short)) * S ((dst_negative_code_padded_actual_short) + (dst_negative_scale_padded_actual_short)) + ((dst_negative_scale_padded_actual_short) + (dst_negative_scale_padded_actual_short)))) * S ((((dst_positive_code_padded_actual_short) + (dst_positive_scale_padded_actual_short)) * S ((dst_positive_code_padded_actual_short) + (dst_positive_scale_padded_actual_short)) + ((dst_positive_scale_padded_actual_short) + (dst_positive_scale_padded_actual_short))) + (((dst_negative_code_padded_actual_short) + (dst_negative_scale_padded_actual_short)) * S ((dst_negative_code_padded_actual_short) + (dst_negative_scale_padded_actual_short)) + ((dst_negative_scale_padded_actual_short) + (dst_negative_scale_padded_actual_short)))) + ((((dst_negative_code_padded_actual_short) + (dst_negative_scale_padded_actual_short)) * S ((dst_negative_code_padded_actual_short) + (dst_negative_scale_padded_actual_short)) + ((dst_negative_scale_padded_actual_short) + (dst_negative_scale_padded_actual_short))) + (((dst_negative_code_padded_actual_short) + (dst_negative_scale_padded_actual_short)) * S ((dst_negative_code_padded_actual_short) + (dst_negative_scale_padded_actual_short)) + ((dst_negative_scale_padded_actual_short) + (dst_negative_scale_padded_actual_short)))))) /\ (((exists fs_u_dst_padded_actual_shortpositive fs_v_dst_padded_actual_shortpositive. ((((exists fs_h_dst_padded_actual_shortpositive_body_start. fs_h_dst_padded_actual_shortpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_padded_actual_shortpositive)) /\ exists fs_q_dst_padded_actual_shortpositive_body_start. fs_u_dst_padded_actual_shortpositive = fs_q_dst_padded_actual_shortpositive_body_start * S ((S (0)) * fs_v_dst_padded_actual_shortpositive) + (0))) /\ ((((exists fs_h_dst_padded_actual_shortpositive_body_terminal. fs_h_dst_padded_actual_shortpositive_body_terminal + S (dst_positive_sum_padded_actual_short) = S ((S (S n)) * fs_v_dst_padded_actual_shortpositive)) /\ exists fs_q_dst_padded_actual_shortpositive_body_terminal. fs_u_dst_padded_actual_shortpositive = fs_q_dst_padded_actual_shortpositive_body_terminal * S ((S (S n)) * fs_v_dst_padded_actual_shortpositive) + (dst_positive_sum_padded_actual_short))) /\ forall fs_i_dst_padded_actual_shortpositive_body_steps. (exists fs_lt_dst_padded_actual_shortpositive_body_steps_bound. fs_lt_dst_padded_actual_shortpositive_body_steps_bound + S fs_i_dst_padded_actual_shortpositive_body_steps = S n) -> exists fs_a_dst_padded_actual_shortpositive_body_steps fs_r_dst_padded_actual_shortpositive_body_steps fs_s_dst_padded_actual_shortpositive_body_steps. ((((exists fs_h_dst_padded_actual_shortpositive_body_steps_summand. fs_h_dst_padded_actual_shortpositive_body_steps_summand + S (fs_a_dst_padded_actual_shortpositive_body_steps) = S ((S (fs_i_dst_padded_actual_shortpositive_body_steps)) * dst_positive_scale_padded_actual_short)) /\ exists fs_q_dst_padded_actual_shortpositive_body_steps_summand. dst_positive_code_padded_actual_short = fs_q_dst_padded_actual_shortpositive_body_steps_summand * S ((S (fs_i_dst_padded_actual_shortpositive_body_steps)) * dst_positive_scale_padded_actual_short) + (fs_a_dst_padded_actual_shortpositive_body_steps))) /\ ((((exists fs_h_dst_padded_actual_shortpositive_body_steps_partial. fs_h_dst_padded_actual_shortpositive_body_steps_partial + S (fs_r_dst_padded_actual_shortpositive_body_steps) = S ((S (fs_i_dst_padded_actual_shortpositive_body_steps)) * fs_v_dst_padded_actual_shortpositive)) /\ exists fs_q_dst_padded_actual_shortpositive_body_steps_partial. fs_u_dst_padded_actual_shortpositive = fs_q_dst_padded_actual_shortpositive_body_steps_partial * S ((S (fs_i_dst_padded_actual_shortpositive_body_steps)) * fs_v_dst_padded_actual_shortpositive) + (fs_r_dst_padded_actual_shortpositive_body_steps))) /\ ((((exists fs_h_dst_padded_actual_shortpositive_body_steps_successor. fs_h_dst_padded_actual_shortpositive_body_steps_successor + S (fs_s_dst_padded_actual_shortpositive_body_steps) = S ((S (S fs_i_dst_padded_actual_shortpositive_body_steps)) * fs_v_dst_padded_actual_shortpositive)) /\ exists fs_q_dst_padded_actual_shortpositive_body_steps_successor. fs_u_dst_padded_actual_shortpositive = fs_q_dst_padded_actual_shortpositive_body_steps_successor * S ((S (S fs_i_dst_padded_actual_shortpositive_body_steps)) * fs_v_dst_padded_actual_shortpositive) + (fs_s_dst_padded_actual_shortpositive_body_steps))) /\ fs_s_dst_padded_actual_shortpositive_body_steps = fs_r_dst_padded_actual_shortpositive_body_steps + fs_a_dst_padded_actual_shortpositive_body_steps)))))) /\ (((exists fs_u_dst_padded_actual_shortnegative fs_v_dst_padded_actual_shortnegative. ((((exists fs_h_dst_padded_actual_shortnegative_body_start. fs_h_dst_padded_actual_shortnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_padded_actual_shortnegative)) /\ exists fs_q_dst_padded_actual_shortnegative_body_start. fs_u_dst_padded_actual_shortnegative = fs_q_dst_padded_actual_shortnegative_body_start * S ((S (0)) * fs_v_dst_padded_actual_shortnegative) + (0))) /\ ((((exists fs_h_dst_padded_actual_shortnegative_body_terminal. fs_h_dst_padded_actual_shortnegative_body_terminal + S (dst_negative_sum_padded_actual_short) = S ((S (S n)) * fs_v_dst_padded_actual_shortnegative)) /\ exists fs_q_dst_padded_actual_shortnegative_body_terminal. fs_u_dst_padded_actual_shortnegative = fs_q_dst_padded_actual_shortnegative_body_terminal * S ((S (S n)) * fs_v_dst_padded_actual_shortnegative) + (dst_negative_sum_padded_actual_short))) /\ forall fs_i_dst_padded_actual_shortnegative_body_steps. (exists fs_lt_dst_padded_actual_shortnegative_body_steps_bound. fs_lt_dst_padded_actual_shortnegative_body_steps_bound + S fs_i_dst_padded_actual_shortnegative_body_steps = S n) -> exists fs_a_dst_padded_actual_shortnegative_body_steps fs_r_dst_padded_actual_shortnegative_body_steps fs_s_dst_padded_actual_shortnegative_body_steps. ((((exists fs_h_dst_padded_actual_shortnegative_body_steps_summand. fs_h_dst_padded_actual_shortnegative_body_steps_summand + S (fs_a_dst_padded_actual_shortnegative_body_steps) = S ((S (fs_i_dst_padded_actual_shortnegative_body_steps)) * dst_negative_scale_padded_actual_short)) /\ exists fs_q_dst_padded_actual_shortnegative_body_steps_summand. dst_negative_code_padded_actual_short = fs_q_dst_padded_actual_shortnegative_body_steps_summand * S ((S (fs_i_dst_padded_actual_shortnegative_body_steps)) * dst_negative_scale_padded_actual_short) + (fs_a_dst_padded_actual_shortnegative_body_steps))) /\ ((((exists fs_h_dst_padded_actual_shortnegative_body_steps_partial. fs_h_dst_padded_actual_shortnegative_body_steps_partial + S (fs_r_dst_padded_actual_shortnegative_body_steps) = S ((S (fs_i_dst_padded_actual_shortnegative_body_steps)) * fs_v_dst_padded_actual_shortnegative)) /\ exists fs_q_dst_padded_actual_shortnegative_body_steps_partial. fs_u_dst_padded_actual_shortnegative = fs_q_dst_padded_actual_shortnegative_body_steps_partial * S ((S (fs_i_dst_padded_actual_shortnegative_body_steps)) * fs_v_dst_padded_actual_shortnegative) + (fs_r_dst_padded_actual_shortnegative_body_steps))) /\ ((((exists fs_h_dst_padded_actual_shortnegative_body_steps_successor. fs_h_dst_padded_actual_shortnegative_body_steps_successor + S (fs_s_dst_padded_actual_shortnegative_body_steps) = S ((S (S fs_i_dst_padded_actual_shortnegative_body_steps)) * fs_v_dst_padded_actual_shortnegative)) /\ exists fs_q_dst_padded_actual_shortnegative_body_steps_successor. fs_u_dst_padded_actual_shortnegative = fs_q_dst_padded_actual_shortnegative_body_steps_successor * S ((S (S fs_i_dst_padded_actual_shortnegative_body_steps)) * fs_v_dst_padded_actual_shortnegative) + (fs_s_dst_padded_actual_shortnegative_body_steps))) /\ fs_s_dst_padded_actual_shortnegative_body_steps = fs_r_dst_padded_actual_shortnegative_body_steps + fs_a_dst_padded_actual_shortnegative_body_steps)))))) /\ (exists ge_balance_positive_padded_actual_shortresult ge_balance_negative_padded_actual_shortresult. (((((a) = 2 * (ge_balance_positive_padded_actual_shortresult) /\ (ge_balance_negative_padded_actual_shortresult) = 0) \/ exists ge_signed_half_padded_actual_shortresultdecode. (((a) = 2 * ge_signed_half_padded_actual_shortresultdecode + 1 /\ (ge_balance_positive_padded_actual_shortresult) = 0) /\ (ge_balance_negative_padded_actual_shortresult) = S ge_signed_half_padded_actual_shortresultdecode))) /\ ((dst_positive_sum_padded_actual_short) + ge_balance_negative_padded_actual_shortresult = (dst_negative_sum_padded_actual_short) + ge_balance_positive_padded_actual_shortresult))))))))) - 0013
specialize arithmetic_signed_sum_exists (L) - 0014
specialize arithmetic_signed_sum_exists (M) - 0015
specialize arithmetic_signed_sum_exists (S n) - 0016
apply arithmetic_signed_sum_exists - 0017
exact hp_left - 0018
cases hshort - 0019
have he : x=z - 0020
specialize signed_prefix_sum_zero_tail (M) - 0021
specialize signed_prefix_sum_zero_tail (S n) - 0022
specialize signed_prefix_sum_zero_tail (S L) - 0023
specialize signed_prefix_sum_zero_tail (x) - 0024
specialize signed_prefix_sum_zero_tail (z) - 0025
apply signed_prefix_sum_zero_tail - 0026
specialize succ_le_succ (n) - 0027
specialize succ_le_succ (L) - 0028
apply succ_le_succ - 0029
exact hbound - 0030
specialize dirichlet_convolution_prefix_zero_tail (F) - 0031
specialize dirichlet_convolution_prefix_zero_tail (G) - 0032
specialize dirichlet_convolution_prefix_zero_tail (n) - 0033
specialize dirichlet_convolution_prefix_zero_tail (L) - 0034
specialize dirichlet_convolution_prefix_zero_tail (M) - 0035
apply dirichlet_convolution_prefix_zero_tail - 0036
exact hn - 0037
exact hp - 0038
exact hshort_witness - 0039
exact hs - 0040
rewrite he at hshort_witness - 0041
rewrite he at hshort_witness - 0042
split - 0043
exact hn - 0044
exists M - 0045
split - 0046
specialize dirichlet_convolution_prefix_restrict (F) - 0047
specialize dirichlet_convolution_prefix_restrict (G) - 0048
specialize dirichlet_convolution_prefix_restrict (n) - 0049
specialize dirichlet_convolution_prefix_restrict (L) - 0050
specialize dirichlet_convolution_prefix_restrict (n) - 0051
specialize dirichlet_convolution_prefix_restrict (M) - 0052
apply dirichlet_convolution_prefix_restrict - 0053
exact hp - 0054
exact hbound - 0055
exact hshort_witness