IV0009

dirichlet_unit_equation_construct

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

Finite induction constructs an actual solution G*F=T for every target table and signed unit F(1), with an arbitrary prescribed G(0), including actual witnesses when N=0.

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 N F T u w. (exists dst_positive_code_solve_construct_F dst_positive_scale_solve_construct_F dst_negative_code_solve_construct_F dst_negative_scale_solve_construct_F. (((F) = (((((dst_positive_code_solve_construct_F) + (dst_positive_scale_solve_construct_F)) * S ((dst_positive_code_solve_construct_F) + (dst_positive_scale_solve_construct_F)) + ((dst_positive_scale_solve_construct_F) + (dst_positive_scale_solve_construct_F))) + (((dst_negative_code_solve_construct_F) + (dst_negative_scale_solve_construct_F)) * S ((dst_negative_code_solve_construct_F) + (dst_negative_scale_solve_construct_F)) + ((dst_negative_scale_solve_construct_F) + (dst_negative_scale_solve_construct_F)))) * S ((((dst_positive_code_solve_construct_F) + (dst_positive_scale_solve_construct_F)) * S ((dst_positive_code_solve_construct_F) + (dst_positive_scale_solve_construct_F)) + ((dst_positive_scale_solve_construct_F) + (dst_positive_scale_solve_construct_F))) + (((dst_negative_code_solve_construct_F) + (dst_negative_scale_solve_construct_F)) * S ((dst_negative_code_solve_construct_F) + (dst_negative_scale_solve_construct_F)) + ((dst_negative_scale_solve_construct_F) + (dst_negative_scale_solve_construct_F)))) + ((((dst_negative_code_solve_construct_F) + (dst_negative_scale_solve_construct_F)) * S ((dst_negative_code_solve_construct_F) + (dst_negative_scale_solve_construct_F)) + ((dst_negative_scale_solve_construct_F) + (dst_negative_scale_solve_construct_F))) + (((dst_negative_code_solve_construct_F) + (dst_negative_scale_solve_construct_F)) * S ((dst_negative_code_solve_construct_F) + (dst_negative_scale_solve_construct_F)) + ((dst_negative_scale_solve_construct_F) + (dst_negative_scale_solve_construct_F)))))) /\ (forall dst_index_solve_construct_F. (exists pvs_le_gap_solve_construct_Fdomain. pvs_le_gap_solve_construct_Fdomain + (dst_index_solve_construct_F) = (N)) -> exists dst_positive_solve_construct_F dst_negative_solve_construct_F dst_value_solve_construct_F. ((((exists ff_h_pvs_solve_construct_Fentrypositive. ff_h_pvs_solve_construct_Fentrypositive + S (dst_positive_solve_construct_F) = S ((S (dst_index_solve_construct_F)) * dst_positive_scale_solve_construct_F)) /\ exists ff_q_pvs_solve_construct_Fentrypositive. dst_positive_code_solve_construct_F = ff_q_pvs_solve_construct_Fentrypositive * S ((S (dst_index_solve_construct_F)) * dst_positive_scale_solve_construct_F) + (dst_positive_solve_construct_F))) /\ (((((exists ff_h_pvs_solve_construct_Fentrynegative. ff_h_pvs_solve_construct_Fentrynegative + S (dst_negative_solve_construct_F) = S ((S (dst_index_solve_construct_F)) * dst_negative_scale_solve_construct_F)) /\ exists ff_q_pvs_solve_construct_Fentrynegative. dst_negative_code_solve_construct_F = ff_q_pvs_solve_construct_Fentrynegative * S ((S (dst_index_solve_construct_F)) * dst_negative_scale_solve_construct_F) + (dst_negative_solve_construct_F))) /\ (exists ge_balance_positive_solve_construct_Fentryvalue ge_balance_negative_solve_construct_Fentryvalue. (((((dst_value_solve_construct_F) = 2 * (ge_balance_positive_solve_construct_Fentryvalue) /\ (ge_balance_negative_solve_construct_Fentryvalue) = 0) \/ exists ge_signed_half_solve_construct_Fentryvaluedecode. (((dst_value_solve_construct_F) = 2 * ge_signed_half_solve_construct_Fentryvaluedecode + 1 /\ (ge_balance_positive_solve_construct_Fentryvalue) = 0) /\ (ge_balance_negative_solve_construct_Fentryvalue) = S ge_signed_half_solve_construct_Fentryvaluedecode))) /\ ((dst_positive_solve_construct_F) + ge_balance_negative_solve_construct_Fentryvalue = (dst_negative_solve_construct_F) + ge_balance_positive_solve_construct_Fentryvalue))))))))) -> (exists dst_positive_code_solve_construct_T dst_positive_scale_solve_construct_T dst_negative_code_solve_construct_T dst_negative_scale_solve_construct_T. (((T) = (((((dst_positive_code_solve_construct_T) + (dst_positive_scale_solve_construct_T)) * S ((dst_positive_code_solve_construct_T) + (dst_positive_scale_solve_construct_T)) + ((dst_positive_scale_solve_construct_T) + (dst_positive_scale_solve_construct_T))) + (((dst_negative_code_solve_construct_T) + (dst_negative_scale_solve_construct_T)) * S ((dst_negative_code_solve_construct_T) + (dst_negative_scale_solve_construct_T)) + ((dst_negative_scale_solve_construct_T) + (dst_negative_scale_solve_construct_T)))) * S ((((dst_positive_code_solve_construct_T) + (dst_positive_scale_solve_construct_T)) * S ((dst_positive_code_solve_construct_T) + (dst_positive_scale_solve_construct_T)) + ((dst_positive_scale_solve_construct_T) + (dst_positive_scale_solve_construct_T))) + (((dst_negative_code_solve_construct_T) + (dst_negative_scale_solve_construct_T)) * S ((dst_negative_code_solve_construct_T) + (dst_negative_scale_solve_construct_T)) + ((dst_negative_scale_solve_construct_T) + (dst_negative_scale_solve_construct_T)))) + ((((dst_negative_code_solve_construct_T) + (dst_negative_scale_solve_construct_T)) * S ((dst_negative_code_solve_construct_T) + (dst_negative_scale_solve_construct_T)) + ((dst_negative_scale_solve_construct_T) + (dst_negative_scale_solve_construct_T))) + (((dst_negative_code_solve_construct_T) + (dst_negative_scale_solve_construct_T)) * S ((dst_negative_code_solve_construct_T) + (dst_negative_scale_solve_construct_T)) + ((dst_negative_scale_solve_construct_T) + (dst_negative_scale_solve_construct_T)))))) /\ (forall dst_index_solve_construct_T. (exists pvs_le_gap_solve_construct_Tdomain. pvs_le_gap_solve_construct_Tdomain + (dst_index_solve_construct_T) = (N)) -> exists dst_positive_solve_construct_T dst_negative_solve_construct_T dst_value_solve_construct_T. ((((exists ff_h_pvs_solve_construct_Tentrypositive. ff_h_pvs_solve_construct_Tentrypositive + S (dst_positive_solve_construct_T) = S ((S (dst_index_solve_construct_T)) * dst_positive_scale_solve_construct_T)) /\ exists ff_q_pvs_solve_construct_Tentrypositive. dst_positive_code_solve_construct_T = ff_q_pvs_solve_construct_Tentrypositive * S ((S (dst_index_solve_construct_T)) * dst_positive_scale_solve_construct_T) + (dst_positive_solve_construct_T))) /\ (((((exists ff_h_pvs_solve_construct_Tentrynegative. ff_h_pvs_solve_construct_Tentrynegative + S (dst_negative_solve_construct_T) = S ((S (dst_index_solve_construct_T)) * dst_negative_scale_solve_construct_T)) /\ exists ff_q_pvs_solve_construct_Tentrynegative. dst_negative_code_solve_construct_T = ff_q_pvs_solve_construct_Tentrynegative * S ((S (dst_index_solve_construct_T)) * dst_negative_scale_solve_construct_T) + (dst_negative_solve_construct_T))) /\ (exists ge_balance_positive_solve_construct_Tentryvalue ge_balance_negative_solve_construct_Tentryvalue. (((((dst_value_solve_construct_T) = 2 * (ge_balance_positive_solve_construct_Tentryvalue) /\ (ge_balance_negative_solve_construct_Tentryvalue) = 0) \/ exists ge_signed_half_solve_construct_Tentryvaluedecode. (((dst_value_solve_construct_T) = 2 * ge_signed_half_solve_construct_Tentryvaluedecode + 1 /\ (ge_balance_positive_solve_construct_Tentryvalue) = 0) /\ (ge_balance_negative_solve_construct_Tentryvalue) = S ge_signed_half_solve_construct_Tentryvaluedecode))) /\ ((dst_positive_solve_construct_T) + ge_balance_negative_solve_construct_Tentryvalue = (dst_negative_solve_construct_T) + ge_balance_positive_solve_construct_Tentryvalue))))))))) -> (exists dst_positive_code_solve_construct_coefficient dst_positive_scale_solve_construct_coefficient dst_negative_code_solve_construct_coefficient dst_negative_scale_solve_construct_coefficient dst_positive_solve_construct_coefficient dst_negative_solve_construct_coefficient. (((F) = (((((dst_positive_code_solve_construct_coefficient) + (dst_positive_scale_solve_construct_coefficient)) * S ((dst_positive_code_solve_construct_coefficient) + (dst_positive_scale_solve_construct_coefficient)) + ((dst_positive_scale_solve_construct_coefficient) + (dst_positive_scale_solve_construct_coefficient))) + (((dst_negative_code_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)) * S ((dst_negative_code_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)) + ((dst_negative_scale_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)))) * S ((((dst_positive_code_solve_construct_coefficient) + (dst_positive_scale_solve_construct_coefficient)) * S ((dst_positive_code_solve_construct_coefficient) + (dst_positive_scale_solve_construct_coefficient)) + ((dst_positive_scale_solve_construct_coefficient) + (dst_positive_scale_solve_construct_coefficient))) + (((dst_negative_code_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)) * S ((dst_negative_code_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)) + ((dst_negative_scale_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)))) + ((((dst_negative_code_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)) * S ((dst_negative_code_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)) + ((dst_negative_scale_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient))) + (((dst_negative_code_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)) * S ((dst_negative_code_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)) + ((dst_negative_scale_solve_construct_coefficient) + (dst_negative_scale_solve_construct_coefficient)))))) /\ (((((exists ff_h_pvs_solve_construct_coefficientpositive. ff_h_pvs_solve_construct_coefficientpositive + S (dst_positive_solve_construct_coefficient) = S ((S (1)) * dst_positive_scale_solve_construct_coefficient)) /\ exists ff_q_pvs_solve_construct_coefficientpositive. dst_positive_code_solve_construct_coefficient = ff_q_pvs_solve_construct_coefficientpositive * S ((S (1)) * dst_positive_scale_solve_construct_coefficient) + (dst_positive_solve_construct_coefficient))) /\ (((((exists ff_h_pvs_solve_construct_coefficientnegative. ff_h_pvs_solve_construct_coefficientnegative + S (dst_negative_solve_construct_coefficient) = S ((S (1)) * dst_negative_scale_solve_construct_coefficient)) /\ exists ff_q_pvs_solve_construct_coefficientnegative. dst_negative_code_solve_construct_coefficient = ff_q_pvs_solve_construct_coefficientnegative * S ((S (1)) * dst_negative_scale_solve_construct_coefficient) + (dst_negative_solve_construct_coefficient))) /\ (exists ge_balance_positive_solve_construct_coefficientvalue ge_balance_negative_solve_construct_coefficientvalue. (((((u) = 2 * (ge_balance_positive_solve_construct_coefficientvalue) /\ (ge_balance_negative_solve_construct_coefficientvalue) = 0) \/ exists ge_signed_half_solve_construct_coefficientvaluedecode. (((u) = 2 * ge_signed_half_solve_construct_coefficientvaluedecode + 1 /\ (ge_balance_positive_solve_construct_coefficientvalue) = 0) /\ (ge_balance_negative_solve_construct_coefficientvalue) = S ge_signed_half_solve_construct_coefficientvaluedecode))) /\ ((dst_positive_solve_construct_coefficient) + ge_balance_negative_solve_construct_coefficientvalue = (dst_negative_solve_construct_coefficient) + ge_balance_positive_solve_construct_coefficientvalue))))))))) -> (((u) = 2 \/ (u) = 1)) -> exists G. ((((exists dst_positive_code_solve_construct_resultleft dst_positive_scale_solve_construct_resultleft dst_negative_code_solve_construct_resultleft dst_negative_scale_solve_construct_resultleft. (((G) = (((((dst_positive_code_solve_construct_resultleft) + (dst_positive_scale_solve_construct_resultleft)) * S ((dst_positive_code_solve_construct_resultleft) + (dst_positive_scale_solve_construct_resultleft)) + ((dst_positive_scale_solve_construct_resultleft) + (dst_positive_scale_solve_construct_resultleft))) + (((dst_negative_code_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)) * S ((dst_negative_code_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)) + ((dst_negative_scale_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)))) * S ((((dst_positive_code_solve_construct_resultleft) + (dst_positive_scale_solve_construct_resultleft)) * S ((dst_positive_code_solve_construct_resultleft) + (dst_positive_scale_solve_construct_resultleft)) + ((dst_positive_scale_solve_construct_resultleft) + (dst_positive_scale_solve_construct_resultleft))) + (((dst_negative_code_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)) * S ((dst_negative_code_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)) + ((dst_negative_scale_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)))) + ((((dst_negative_code_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)) * S ((dst_negative_code_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)) + ((dst_negative_scale_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft))) + (((dst_negative_code_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)) * S ((dst_negative_code_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)) + ((dst_negative_scale_solve_construct_resultleft) + (dst_negative_scale_solve_construct_resultleft)))))) /\ (forall dst_index_solve_construct_resultleft. (exists pvs_le_gap_solve_construct_resultleftdomain. pvs_le_gap_solve_construct_resultleftdomain + (dst_index_solve_construct_resultleft) = (N)) -> exists dst_positive_solve_construct_resultleft dst_negative_solve_construct_resultleft dst_value_solve_construct_resultleft. ((((exists ff_h_pvs_solve_construct_resultleftentrypositive. ff_h_pvs_solve_construct_resultleftentrypositive + S (dst_positive_solve_construct_resultleft) = S ((S (dst_index_solve_construct_resultleft)) * dst_positive_scale_solve_construct_resultleft)) /\ exists ff_q_pvs_solve_construct_resultleftentrypositive. dst_positive_code_solve_construct_resultleft = ff_q_pvs_solve_construct_resultleftentrypositive * S ((S (dst_index_solve_construct_resultleft)) * dst_positive_scale_solve_construct_resultleft) + (dst_positive_solve_construct_resultleft))) /\ (((((exists ff_h_pvs_solve_construct_resultleftentrynegative. ff_h_pvs_solve_construct_resultleftentrynegative + S (dst_negative_solve_construct_resultleft) = S ((S (dst_index_solve_construct_resultleft)) * dst_negative_scale_solve_construct_resultleft)) /\ exists ff_q_pvs_solve_construct_resultleftentrynegative. dst_negative_code_solve_construct_resultleft = ff_q_pvs_solve_construct_resultleftentrynegative * S ((S (dst_index_solve_construct_resultleft)) * dst_negative_scale_solve_construct_resultleft) + (dst_negative_solve_construct_resultleft))) /\ (exists ge_balance_positive_solve_construct_resultleftentryvalue ge_balance_negative_solve_construct_resultleftentryvalue. (((((dst_value_solve_construct_resultleft) = 2 * (ge_balance_positive_solve_construct_resultleftentryvalue) /\ (ge_balance_negative_solve_construct_resultleftentryvalue) = 0) \/ exists ge_signed_half_solve_construct_resultleftentryvaluedecode. (((dst_value_solve_construct_resultleft) = 2 * ge_signed_half_solve_construct_resultleftentryvaluedecode + 1 /\ (ge_balance_positive_solve_construct_resultleftentryvalue) = 0) /\ (ge_balance_negative_solve_construct_resultleftentryvalue) = S ge_signed_half_solve_construct_resultleftentryvaluedecode))) /\ ((dst_positive_solve_construct_resultleft) + ge_balance_negative_solve_construct_resultleftentryvalue = (dst_negative_solve_construct_resultleft) + ge_balance_positive_solve_construct_resultleftentryvalue))))))))) /\ (((exists dst_positive_code_solve_construct_resultright dst_positive_scale_solve_construct_resultright dst_negative_code_solve_construct_resultright dst_negative_scale_solve_construct_resultright. (((F) = (((((dst_positive_code_solve_construct_resultright) + (dst_positive_scale_solve_construct_resultright)) * S ((dst_positive_code_solve_construct_resultright) + (dst_positive_scale_solve_construct_resultright)) + ((dst_positive_scale_solve_construct_resultright) + (dst_positive_scale_solve_construct_resultright))) + (((dst_negative_code_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)) * S ((dst_negative_code_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)) + ((dst_negative_scale_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)))) * S ((((dst_positive_code_solve_construct_resultright) + (dst_positive_scale_solve_construct_resultright)) * S ((dst_positive_code_solve_construct_resultright) + (dst_positive_scale_solve_construct_resultright)) + ((dst_positive_scale_solve_construct_resultright) + (dst_positive_scale_solve_construct_resultright))) + (((dst_negative_code_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)) * S ((dst_negative_code_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)) + ((dst_negative_scale_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)))) + ((((dst_negative_code_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)) * S ((dst_negative_code_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)) + ((dst_negative_scale_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright))) + (((dst_negative_code_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)) * S ((dst_negative_code_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)) + ((dst_negative_scale_solve_construct_resultright) + (dst_negative_scale_solve_construct_resultright)))))) /\ (forall dst_index_solve_construct_resultright. (exists pvs_le_gap_solve_construct_resultrightdomain. pvs_le_gap_solve_construct_resultrightdomain + (dst_index_solve_construct_resultright) = (N)) -> exists dst_positive_solve_construct_resultright dst_negative_solve_construct_resultright dst_value_solve_construct_resultright. ((((exists ff_h_pvs_solve_construct_resultrightentrypositive. ff_h_pvs_solve_construct_resultrightentrypositive + S (dst_positive_solve_construct_resultright) = S ((S (dst_index_solve_construct_resultright)) * dst_positive_scale_solve_construct_resultright)) /\ exists ff_q_pvs_solve_construct_resultrightentrypositive. dst_positive_code_solve_construct_resultright = ff_q_pvs_solve_construct_resultrightentrypositive * S ((S (dst_index_solve_construct_resultright)) * dst_positive_scale_solve_construct_resultright) + (dst_positive_solve_construct_resultright))) /\ (((((exists ff_h_pvs_solve_construct_resultrightentrynegative. ff_h_pvs_solve_construct_resultrightentrynegative + S (dst_negative_solve_construct_resultright) = S ((S (dst_index_solve_construct_resultright)) * dst_negative_scale_solve_construct_resultright)) /\ exists ff_q_pvs_solve_construct_resultrightentrynegative. dst_negative_code_solve_construct_resultright = ff_q_pvs_solve_construct_resultrightentrynegative * S ((S (dst_index_solve_construct_resultright)) * dst_negative_scale_solve_construct_resultright) + (dst_negative_solve_construct_resultright))) /\ (exists ge_balance_positive_solve_construct_resultrightentryvalue ge_balance_negative_solve_construct_resultrightentryvalue. (((((dst_value_solve_construct_resultright) = 2 * (ge_balance_positive_solve_construct_resultrightentryvalue) /\ (ge_balance_negative_solve_construct_resultrightentryvalue) = 0) \/ exists ge_signed_half_solve_construct_resultrightentryvaluedecode. (((dst_value_solve_construct_resultright) = 2 * ge_signed_half_solve_construct_resultrightentryvaluedecode + 1 /\ (ge_balance_positive_solve_construct_resultrightentryvalue) = 0) /\ (ge_balance_negative_solve_construct_resultrightentryvalue) = S ge_signed_half_solve_construct_resultrightentryvaluedecode))) /\ ((dst_positive_solve_construct_resultright) + ge_balance_negative_solve_construct_resultrightentryvalue = (dst_negative_solve_construct_resultright) + ge_balance_positive_solve_construct_resultrightentryvalue))))))))) /\ (((exists dst_positive_code_solve_construct_resulttable dst_positive_scale_solve_construct_resulttable dst_negative_code_solve_construct_resulttable dst_negative_scale_solve_construct_resulttable. (((T) = (((((dst_positive_code_solve_construct_resulttable) + (dst_positive_scale_solve_construct_resulttable)) * S ((dst_positive_code_solve_construct_resulttable) + (dst_positive_scale_solve_construct_resulttable)) + ((dst_positive_scale_solve_construct_resulttable) + (dst_positive_scale_solve_construct_resulttable))) + (((dst_negative_code_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)) * S ((dst_negative_code_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)) + ((dst_negative_scale_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)))) * S ((((dst_positive_code_solve_construct_resulttable) + (dst_positive_scale_solve_construct_resulttable)) * S ((dst_positive_code_solve_construct_resulttable) + (dst_positive_scale_solve_construct_resulttable)) + ((dst_positive_scale_solve_construct_resulttable) + (dst_positive_scale_solve_construct_resulttable))) + (((dst_negative_code_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)) * S ((dst_negative_code_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)) + ((dst_negative_scale_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)))) + ((((dst_negative_code_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)) * S ((dst_negative_code_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)) + ((dst_negative_scale_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable))) + (((dst_negative_code_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)) * S ((dst_negative_code_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)) + ((dst_negative_scale_solve_construct_resulttable) + (dst_negative_scale_solve_construct_resulttable)))))) /\ (forall dst_index_solve_construct_resulttable. (exists pvs_le_gap_solve_construct_resulttabledomain. pvs_le_gap_solve_construct_resulttabledomain + (dst_index_solve_construct_resulttable) = (N)) -> exists dst_positive_solve_construct_resulttable dst_negative_solve_construct_resulttable dst_value_solve_construct_resulttable. ((((exists ff_h_pvs_solve_construct_resulttableentrypositive. ff_h_pvs_solve_construct_resulttableentrypositive + S (dst_positive_solve_construct_resulttable) = S ((S (dst_index_solve_construct_resulttable)) * dst_positive_scale_solve_construct_resulttable)) /\ exists ff_q_pvs_solve_construct_resulttableentrypositive. dst_positive_code_solve_construct_resulttable = ff_q_pvs_solve_construct_resulttableentrypositive * S ((S (dst_index_solve_construct_resulttable)) * dst_positive_scale_solve_construct_resulttable) + (dst_positive_solve_construct_resulttable))) /\ (((((exists ff_h_pvs_solve_construct_resulttableentrynegative. ff_h_pvs_solve_construct_resulttableentrynegative + S (dst_negative_solve_construct_resulttable) = S ((S (dst_index_solve_construct_resulttable)) * dst_negative_scale_solve_construct_resulttable)) /\ exists ff_q_pvs_solve_construct_resulttableentrynegative. dst_negative_code_solve_construct_resulttable = ff_q_pvs_solve_construct_resulttableentrynegative * S ((S (dst_index_solve_construct_resulttable)) * dst_negative_scale_solve_construct_resulttable) + (dst_negative_solve_construct_resulttable))) /\ (exists ge_balance_positive_solve_construct_resulttableentryvalue ge_balance_negative_solve_construct_resulttableentryvalue. (((((dst_value_solve_construct_resulttable) = 2 * (ge_balance_positive_solve_construct_resulttableentryvalue) /\ (ge_balance_negative_solve_construct_resulttableentryvalue) = 0) \/ exists ge_signed_half_solve_construct_resulttableentryvaluedecode. (((dst_value_solve_construct_resulttable) = 2 * ge_signed_half_solve_construct_resulttableentryvaluedecode + 1 /\ (ge_balance_positive_solve_construct_resulttableentryvalue) = 0) /\ (ge_balance_negative_solve_construct_resulttableentryvalue) = S ge_signed_half_solve_construct_resulttableentryvaluedecode))) /\ ((dst_positive_solve_construct_resulttable) + ge_balance_negative_solve_construct_resulttableentryvalue = (dst_negative_solve_construct_resulttable) + ge_balance_positive_solve_construct_resulttableentryvalue))))))))) /\ (forall dc_input_solve_construct_result dc_output_solve_construct_result. ~(dc_input_solve_construct_result=0) -> (exists pvs_le_gap_solve_construct_resultdomain. pvs_le_gap_solve_construct_resultdomain + (dc_input_solve_construct_result) = (N)) -> (exists dst_positive_code_solve_construct_resultlookup dst_positive_scale_solve_construct_resultlookup dst_negative_code_solve_construct_resultlookup dst_negative_scale_solve_construct_resultlookup dst_positive_solve_construct_resultlookup dst_negative_solve_construct_resultlookup. (((T) = (((((dst_positive_code_solve_construct_resultlookup) + (dst_positive_scale_solve_construct_resultlookup)) * S ((dst_positive_code_solve_construct_resultlookup) + (dst_positive_scale_solve_construct_resultlookup)) + ((dst_positive_scale_solve_construct_resultlookup) + (dst_positive_scale_solve_construct_resultlookup))) + (((dst_negative_code_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)) * S ((dst_negative_code_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)) + ((dst_negative_scale_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)))) * S ((((dst_positive_code_solve_construct_resultlookup) + (dst_positive_scale_solve_construct_resultlookup)) * S ((dst_positive_code_solve_construct_resultlookup) + (dst_positive_scale_solve_construct_resultlookup)) + ((dst_positive_scale_solve_construct_resultlookup) + (dst_positive_scale_solve_construct_resultlookup))) + (((dst_negative_code_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)) * S ((dst_negative_code_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)) + ((dst_negative_scale_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)))) + ((((dst_negative_code_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)) * S ((dst_negative_code_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)) + ((dst_negative_scale_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup))) + (((dst_negative_code_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)) * S ((dst_negative_code_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)) + ((dst_negative_scale_solve_construct_resultlookup) + (dst_negative_scale_solve_construct_resultlookup)))))) /\ (((((exists ff_h_pvs_solve_construct_resultlookuppositive. ff_h_pvs_solve_construct_resultlookuppositive + S (dst_positive_solve_construct_resultlookup) = S ((S (dc_input_solve_construct_result)) * dst_positive_scale_solve_construct_resultlookup)) /\ exists ff_q_pvs_solve_construct_resultlookuppositive. dst_positive_code_solve_construct_resultlookup = ff_q_pvs_solve_construct_resultlookuppositive * S ((S (dc_input_solve_construct_result)) * dst_positive_scale_solve_construct_resultlookup) + (dst_positive_solve_construct_resultlookup))) /\ (((((exists ff_h_pvs_solve_construct_resultlookupnegative. ff_h_pvs_solve_construct_resultlookupnegative + S (dst_negative_solve_construct_resultlookup) = S ((S (dc_input_solve_construct_result)) * dst_negative_scale_solve_construct_resultlookup)) /\ exists ff_q_pvs_solve_construct_resultlookupnegative. dst_negative_code_solve_construct_resultlookup = ff_q_pvs_solve_construct_resultlookupnegative * S ((S (dc_input_solve_construct_result)) * dst_negative_scale_solve_construct_resultlookup) + (dst_negative_solve_construct_resultlookup))) /\ (exists ge_balance_positive_solve_construct_resultlookupvalue ge_balance_negative_solve_construct_resultlookupvalue. (((((dc_output_solve_construct_result) = 2 * (ge_balance_positive_solve_construct_resultlookupvalue) /\ (ge_balance_negative_solve_construct_resultlookupvalue) = 0) \/ exists ge_signed_half_solve_construct_resultlookupvaluedecode. (((dc_output_solve_construct_result) = 2 * ge_signed_half_solve_construct_resultlookupvaluedecode + 1 /\ (ge_balance_positive_solve_construct_resultlookupvalue) = 0) /\ (ge_balance_negative_solve_construct_resultlookupvalue) = S ge_signed_half_solve_construct_resultlookupvaluedecode))) /\ ((dst_positive_solve_construct_resultlookup) + ge_balance_negative_solve_construct_resultlookupvalue = (dst_negative_solve_construct_resultlookup) + ge_balance_positive_solve_construct_resultlookupvalue))))))))) -> (((~((dc_input_solve_construct_result)=0)) /\ (exists dc_mask_solve_construct_resultvalue. ((((exists dst_positive_code_solve_construct_resultvaluemasktable dst_positive_scale_solve_construct_resultvaluemasktable dst_negative_code_solve_construct_resultvaluemasktable dst_negative_scale_solve_construct_resultvaluemasktable. (((dc_mask_solve_construct_resultvalue) = (((((dst_positive_code_solve_construct_resultvaluemasktable) + (dst_positive_scale_solve_construct_resultvaluemasktable)) * S ((dst_positive_code_solve_construct_resultvaluemasktable) + (dst_positive_scale_solve_construct_resultvaluemasktable)) + ((dst_positive_scale_solve_construct_resultvaluemasktable) + (dst_positive_scale_solve_construct_resultvaluemasktable))) + (((dst_negative_code_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)) * S ((dst_negative_code_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)) + ((dst_negative_scale_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)))) * S ((((dst_positive_code_solve_construct_resultvaluemasktable) + (dst_positive_scale_solve_construct_resultvaluemasktable)) * S ((dst_positive_code_solve_construct_resultvaluemasktable) + (dst_positive_scale_solve_construct_resultvaluemasktable)) + ((dst_positive_scale_solve_construct_resultvaluemasktable) + (dst_positive_scale_solve_construct_resultvaluemasktable))) + (((dst_negative_code_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)) * S ((dst_negative_code_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)) + ((dst_negative_scale_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)))) + ((((dst_negative_code_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)) * S ((dst_negative_code_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)) + ((dst_negative_scale_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable))) + (((dst_negative_code_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)) * S ((dst_negative_code_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)) + ((dst_negative_scale_solve_construct_resultvaluemasktable) + (dst_negative_scale_solve_construct_resultvaluemasktable)))))) /\ (forall dst_index_solve_construct_resultvaluemasktable. (exists pvs_le_gap_solve_construct_resultvaluemasktabledomain. pvs_le_gap_solve_construct_resultvaluemasktabledomain + (dst_index_solve_construct_resultvaluemasktable) = (dc_input_solve_construct_result)) -> exists dst_positive_solve_construct_resultvaluemasktable dst_negative_solve_construct_resultvaluemasktable dst_value_solve_construct_resultvaluemasktable. ((((exists ff_h_pvs_solve_construct_resultvaluemasktableentrypositive. ff_h_pvs_solve_construct_resultvaluemasktableentrypositive + S (dst_positive_solve_construct_resultvaluemasktable) = S ((S (dst_index_solve_construct_resultvaluemasktable)) * dst_positive_scale_solve_construct_resultvaluemasktable)) /\ exists ff_q_pvs_solve_construct_resultvaluemasktableentrypositive. dst_positive_code_solve_construct_resultvaluemasktable = ff_q_pvs_solve_construct_resultvaluemasktableentrypositive * S ((S (dst_index_solve_construct_resultvaluemasktable)) * dst_positive_scale_solve_construct_resultvaluemasktable) + (dst_positive_solve_construct_resultvaluemasktable))) /\ (((((exists ff_h_pvs_solve_construct_resultvaluemasktableentrynegative. ff_h_pvs_solve_construct_resultvaluemasktableentrynegative + S (dst_negative_solve_construct_resultvaluemasktable) = S ((S (dst_index_solve_construct_resultvaluemasktable)) * dst_negative_scale_solve_construct_resultvaluemasktable)) /\ exists ff_q_pvs_solve_construct_resultvaluemasktableentrynegative. dst_negative_code_solve_construct_resultvaluemasktable = ff_q_pvs_solve_construct_resultvaluemasktableentrynegative * S ((S (dst_index_solve_construct_resultvaluemasktable)) * dst_negative_scale_solve_construct_resultvaluemasktable) + (dst_negative_solve_construct_resultvaluemasktable))) /\ (exists ge_balance_positive_solve_construct_resultvaluemasktableentryvalue ge_balance_negative_solve_construct_resultvaluemasktableentryvalue. (((((dst_value_solve_construct_resultvaluemasktable) = 2 * (ge_balance_positive_solve_construct_resultvaluemasktableentryvalue) /\ (ge_balance_negative_solve_construct_resultvaluemasktableentryvalue) = 0) \/ exists ge_signed_half_solve_construct_resultvaluemasktableentryvaluedecode. (((dst_value_solve_construct_resultvaluemasktable) = 2 * ge_signed_half_solve_construct_resultvaluemasktableentryvaluedecode + 1 /\ (ge_balance_positive_solve_construct_resultvaluemasktableentryvalue) = 0) /\ (ge_balance_negative_solve_construct_resultvaluemasktableentryvalue) = S ge_signed_half_solve_construct_resultvaluemasktableentryvaluedecode))) /\ ((dst_positive_solve_construct_resultvaluemasktable) + ge_balance_negative_solve_construct_resultvaluemasktableentryvalue = (dst_negative_solve_construct_resultvaluemasktable) + ge_balance_positive_solve_construct_resultvaluemasktableentryvalue))))))))) /\ (forall dc_index_solve_construct_resultvaluemask dc_value_solve_construct_resultvaluemask. (exists pvs_le_gap_solve_construct_resultvaluemaskdomain. pvs_le_gap_solve_construct_resultvaluemaskdomain + (dc_index_solve_construct_resultvaluemask) = (dc_input_solve_construct_result)) -> (exists dst_positive_code_solve_construct_resultvaluemasklookup dst_positive_scale_solve_construct_resultvaluemasklookup dst_negative_code_solve_construct_resultvaluemasklookup dst_negative_scale_solve_construct_resultvaluemasklookup dst_positive_solve_construct_resultvaluemasklookup dst_negative_solve_construct_resultvaluemasklookup. (((dc_mask_solve_construct_resultvalue) = (((((dst_positive_code_solve_construct_resultvaluemasklookup) + (dst_positive_scale_solve_construct_resultvaluemasklookup)) * S ((dst_positive_code_solve_construct_resultvaluemasklookup) + (dst_positive_scale_solve_construct_resultvaluemasklookup)) + ((dst_positive_scale_solve_construct_resultvaluemasklookup) + (dst_positive_scale_solve_construct_resultvaluemasklookup))) + (((dst_negative_code_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)) * S ((dst_negative_code_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)) + ((dst_negative_scale_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)))) * S ((((dst_positive_code_solve_construct_resultvaluemasklookup) + (dst_positive_scale_solve_construct_resultvaluemasklookup)) * S ((dst_positive_code_solve_construct_resultvaluemasklookup) + (dst_positive_scale_solve_construct_resultvaluemasklookup)) + ((dst_positive_scale_solve_construct_resultvaluemasklookup) + (dst_positive_scale_solve_construct_resultvaluemasklookup))) + (((dst_negative_code_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)) * S ((dst_negative_code_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)) + ((dst_negative_scale_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)))) + ((((dst_negative_code_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)) * S ((dst_negative_code_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)) + ((dst_negative_scale_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup))) + (((dst_negative_code_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)) * S ((dst_negative_code_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)) + ((dst_negative_scale_solve_construct_resultvaluemasklookup) + (dst_negative_scale_solve_construct_resultvaluemasklookup)))))) /\ (((((exists ff_h_pvs_solve_construct_resultvaluemasklookuppositive. ff_h_pvs_solve_construct_resultvaluemasklookuppositive + S (dst_positive_solve_construct_resultvaluemasklookup) = S ((S (dc_index_solve_construct_resultvaluemask)) * dst_positive_scale_solve_construct_resultvaluemasklookup)) /\ exists ff_q_pvs_solve_construct_resultvaluemasklookuppositive. dst_positive_code_solve_construct_resultvaluemasklookup = ff_q_pvs_solve_construct_resultvaluemasklookuppositive * S ((S (dc_index_solve_construct_resultvaluemask)) * dst_positive_scale_solve_construct_resultvaluemasklookup) + (dst_positive_solve_construct_resultvaluemasklookup))) /\ (((((exists ff_h_pvs_solve_construct_resultvaluemasklookupnegative. ff_h_pvs_solve_construct_resultvaluemasklookupnegative + S (dst_negative_solve_construct_resultvaluemasklookup) = S ((S (dc_index_solve_construct_resultvaluemask)) * dst_negative_scale_solve_construct_resultvaluemasklookup)) /\ exists ff_q_pvs_solve_construct_resultvaluemasklookupnegative. dst_negative_code_solve_construct_resultvaluemasklookup = ff_q_pvs_solve_construct_resultvaluemasklookupnegative * S ((S (dc_index_solve_construct_resultvaluemask)) * dst_negative_scale_solve_construct_resultvaluemasklookup) + (dst_negative_solve_construct_resultvaluemasklookup))) /\ (exists ge_balance_positive_solve_construct_resultvaluemasklookupvalue ge_balance_negative_solve_construct_resultvaluemasklookupvalue. (((((dc_value_solve_construct_resultvaluemask) = 2 * (ge_balance_positive_solve_construct_resultvaluemasklookupvalue) /\ (ge_balance_negative_solve_construct_resultvaluemasklookupvalue) = 0) \/ exists ge_signed_half_solve_construct_resultvaluemasklookupvaluedecode. (((dc_value_solve_construct_resultvaluemask) = 2 * ge_signed_half_solve_construct_resultvaluemasklookupvaluedecode + 1 /\ (ge_balance_positive_solve_construct_resultvaluemasklookupvalue) = 0) /\ (ge_balance_negative_solve_construct_resultvaluemasklookupvalue) = S ge_signed_half_solve_construct_resultvaluemasklookupvaluedecode))) /\ ((dst_positive_solve_construct_resultvaluemasklookup) + ge_balance_negative_solve_construct_resultvaluemasklookupvalue = (dst_negative_solve_construct_resultvaluemasklookup) + ge_balance_positive_solve_construct_resultvaluemasklookupvalue))))))))) -> ((((~((dc_index_solve_construct_resultvaluemask)=0)) /\ (exists dc_quotient_solve_construct_resultvaluemaskentry dc_left_solve_construct_resultvaluemaskentry dc_right_solve_construct_resultvaluemaskentry. (((dc_input_solve_construct_result)=(dc_index_solve_construct_resultvaluemask)*dc_quotient_solve_construct_resultvaluemaskentry) /\ (((exists dst_positive_code_solve_construct_resultvaluemaskentryleft dst_positive_scale_solve_construct_resultvaluemaskentryleft dst_negative_code_solve_construct_resultvaluemaskentryleft dst_negative_scale_solve_construct_resultvaluemaskentryleft dst_positive_solve_construct_resultvaluemaskentryleft dst_negative_solve_construct_resultvaluemaskentryleft. (((G) = (((((dst_positive_code_solve_construct_resultvaluemaskentryleft) + (dst_positive_scale_solve_construct_resultvaluemaskentryleft)) * S ((dst_positive_code_solve_construct_resultvaluemaskentryleft) + (dst_positive_scale_solve_construct_resultvaluemaskentryleft)) + ((dst_positive_scale_solve_construct_resultvaluemaskentryleft) + (dst_positive_scale_solve_construct_resultvaluemaskentryleft))) + (((dst_negative_code_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)) * S ((dst_negative_code_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)) + ((dst_negative_scale_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)))) * S ((((dst_positive_code_solve_construct_resultvaluemaskentryleft) + (dst_positive_scale_solve_construct_resultvaluemaskentryleft)) * S ((dst_positive_code_solve_construct_resultvaluemaskentryleft) + (dst_positive_scale_solve_construct_resultvaluemaskentryleft)) + ((dst_positive_scale_solve_construct_resultvaluemaskentryleft) + (dst_positive_scale_solve_construct_resultvaluemaskentryleft))) + (((dst_negative_code_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)) * S ((dst_negative_code_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)) + ((dst_negative_scale_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)))) + ((((dst_negative_code_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)) * S ((dst_negative_code_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)) + ((dst_negative_scale_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft))) + (((dst_negative_code_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)) * S ((dst_negative_code_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)) + ((dst_negative_scale_solve_construct_resultvaluemaskentryleft) + (dst_negative_scale_solve_construct_resultvaluemaskentryleft)))))) /\ (((((exists ff_h_pvs_solve_construct_resultvaluemaskentryleftpositive. ff_h_pvs_solve_construct_resultvaluemaskentryleftpositive + S (dst_positive_solve_construct_resultvaluemaskentryleft) = S ((S (dc_index_solve_construct_resultvaluemask)) * dst_positive_scale_solve_construct_resultvaluemaskentryleft)) /\ exists ff_q_pvs_solve_construct_resultvaluemaskentryleftpositive. dst_positive_code_solve_construct_resultvaluemaskentryleft = ff_q_pvs_solve_construct_resultvaluemaskentryleftpositive * S ((S (dc_index_solve_construct_resultvaluemask)) * dst_positive_scale_solve_construct_resultvaluemaskentryleft) + (dst_positive_solve_construct_resultvaluemaskentryleft))) /\ (((((exists ff_h_pvs_solve_construct_resultvaluemaskentryleftnegative. ff_h_pvs_solve_construct_resultvaluemaskentryleftnegative + S (dst_negative_solve_construct_resultvaluemaskentryleft) = S ((S (dc_index_solve_construct_resultvaluemask)) * dst_negative_scale_solve_construct_resultvaluemaskentryleft)) /\ exists ff_q_pvs_solve_construct_resultvaluemaskentryleftnegative. dst_negative_code_solve_construct_resultvaluemaskentryleft = ff_q_pvs_solve_construct_resultvaluemaskentryleftnegative * S ((S (dc_index_solve_construct_resultvaluemask)) * dst_negative_scale_solve_construct_resultvaluemaskentryleft) + (dst_negative_solve_construct_resultvaluemaskentryleft))) /\ (exists ge_balance_positive_solve_construct_resultvaluemaskentryleftvalue ge_balance_negative_solve_construct_resultvaluemaskentryleftvalue. (((((dc_left_solve_construct_resultvaluemaskentry) = 2 * (ge_balance_positive_solve_construct_resultvaluemaskentryleftvalue) /\ (ge_balance_negative_solve_construct_resultvaluemaskentryleftvalue) = 0) \/ exists ge_signed_half_solve_construct_resultvaluemaskentryleftvaluedecode. (((dc_left_solve_construct_resultvaluemaskentry) = 2 * ge_signed_half_solve_construct_resultvaluemaskentryleftvaluedecode + 1 /\ (ge_balance_positive_solve_construct_resultvaluemaskentryleftvalue) = 0) /\ (ge_balance_negative_solve_construct_resultvaluemaskentryleftvalue) = S ge_signed_half_solve_construct_resultvaluemaskentryleftvaluedecode))) /\ ((dst_positive_solve_construct_resultvaluemaskentryleft) + ge_balance_negative_solve_construct_resultvaluemaskentryleftvalue = (dst_negative_solve_construct_resultvaluemaskentryleft) + ge_balance_positive_solve_construct_resultvaluemaskentryleftvalue))))))))) /\ (((exists dst_positive_code_solve_construct_resultvaluemaskentryright dst_positive_scale_solve_construct_resultvaluemaskentryright dst_negative_code_solve_construct_resultvaluemaskentryright dst_negative_scale_solve_construct_resultvaluemaskentryright dst_positive_solve_construct_resultvaluemaskentryright dst_negative_solve_construct_resultvaluemaskentryright. (((F) = (((((dst_positive_code_solve_construct_resultvaluemaskentryright) + (dst_positive_scale_solve_construct_resultvaluemaskentryright)) * S ((dst_positive_code_solve_construct_resultvaluemaskentryright) + (dst_positive_scale_solve_construct_resultvaluemaskentryright)) + ((dst_positive_scale_solve_construct_resultvaluemaskentryright) + (dst_positive_scale_solve_construct_resultvaluemaskentryright))) + (((dst_negative_code_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)) * S ((dst_negative_code_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)) + ((dst_negative_scale_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)))) * S ((((dst_positive_code_solve_construct_resultvaluemaskentryright) + (dst_positive_scale_solve_construct_resultvaluemaskentryright)) * S ((dst_positive_code_solve_construct_resultvaluemaskentryright) + (dst_positive_scale_solve_construct_resultvaluemaskentryright)) + ((dst_positive_scale_solve_construct_resultvaluemaskentryright) + (dst_positive_scale_solve_construct_resultvaluemaskentryright))) + (((dst_negative_code_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)) * S ((dst_negative_code_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)) + ((dst_negative_scale_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)))) + ((((dst_negative_code_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)) * S ((dst_negative_code_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)) + ((dst_negative_scale_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright))) + (((dst_negative_code_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)) * S ((dst_negative_code_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)) + ((dst_negative_scale_solve_construct_resultvaluemaskentryright) + (dst_negative_scale_solve_construct_resultvaluemaskentryright)))))) /\ (((((exists ff_h_pvs_solve_construct_resultvaluemaskentryrightpositive. ff_h_pvs_solve_construct_resultvaluemaskentryrightpositive + S (dst_positive_solve_construct_resultvaluemaskentryright) = S ((S (dc_quotient_solve_construct_resultvaluemaskentry)) * dst_positive_scale_solve_construct_resultvaluemaskentryright)) /\ exists ff_q_pvs_solve_construct_resultvaluemaskentryrightpositive. dst_positive_code_solve_construct_resultvaluemaskentryright = ff_q_pvs_solve_construct_resultvaluemaskentryrightpositive * S ((S (dc_quotient_solve_construct_resultvaluemaskentry)) * dst_positive_scale_solve_construct_resultvaluemaskentryright) + (dst_positive_solve_construct_resultvaluemaskentryright))) /\ (((((exists ff_h_pvs_solve_construct_resultvaluemaskentryrightnegative. ff_h_pvs_solve_construct_resultvaluemaskentryrightnegative + S (dst_negative_solve_construct_resultvaluemaskentryright) = S ((S (dc_quotient_solve_construct_resultvaluemaskentry)) * dst_negative_scale_solve_construct_resultvaluemaskentryright)) /\ exists ff_q_pvs_solve_construct_resultvaluemaskentryrightnegative. dst_negative_code_solve_construct_resultvaluemaskentryright = ff_q_pvs_solve_construct_resultvaluemaskentryrightnegative * S ((S (dc_quotient_solve_construct_resultvaluemaskentry)) * dst_negative_scale_solve_construct_resultvaluemaskentryright) + (dst_negative_solve_construct_resultvaluemaskentryright))) /\ (exists ge_balance_positive_solve_construct_resultvaluemaskentryrightvalue ge_balance_negative_solve_construct_resultvaluemaskentryrightvalue. (((((dc_right_solve_construct_resultvaluemaskentry) = 2 * (ge_balance_positive_solve_construct_resultvaluemaskentryrightvalue) /\ (ge_balance_negative_solve_construct_resultvaluemaskentryrightvalue) = 0) \/ exists ge_signed_half_solve_construct_resultvaluemaskentryrightvaluedecode. (((dc_right_solve_construct_resultvaluemaskentry) = 2 * ge_signed_half_solve_construct_resultvaluemaskentryrightvaluedecode + 1 /\ (ge_balance_positive_solve_construct_resultvaluemaskentryrightvalue) = 0) /\ (ge_balance_negative_solve_construct_resultvaluemaskentryrightvalue) = S ge_signed_half_solve_construct_resultvaluemaskentryrightvaluedecode))) /\ ((dst_positive_solve_construct_resultvaluemaskentryright) + ge_balance_negative_solve_construct_resultvaluemaskentryrightvalue = (dst_negative_solve_construct_resultvaluemaskentryright) + ge_balance_positive_solve_construct_resultvaluemaskentryrightvalue))))))))) /\ (exists sto_ap_solve_construct_resultvaluemaskentryproduct sto_an_solve_construct_resultvaluemaskentryproduct sto_bp_solve_construct_resultvaluemaskentryproduct sto_bn_solve_construct_resultvaluemaskentryproduct sto_cp_solve_construct_resultvaluemaskentryproduct sto_cn_solve_construct_resultvaluemaskentryproduct. (((((dc_left_solve_construct_resultvaluemaskentry) = 2 * (sto_ap_solve_construct_resultvaluemaskentryproduct) /\ (sto_an_solve_construct_resultvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_construct_resultvaluemaskentryproductleft. (((dc_left_solve_construct_resultvaluemaskentry) = 2 * ge_signed_half_solve_construct_resultvaluemaskentryproductleft + 1 /\ (sto_ap_solve_construct_resultvaluemaskentryproduct) = 0) /\ (sto_an_solve_construct_resultvaluemaskentryproduct) = S ge_signed_half_solve_construct_resultvaluemaskentryproductleft))) /\ ((((((dc_right_solve_construct_resultvaluemaskentry) = 2 * (sto_bp_solve_construct_resultvaluemaskentryproduct) /\ (sto_bn_solve_construct_resultvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_construct_resultvaluemaskentryproductright. (((dc_right_solve_construct_resultvaluemaskentry) = 2 * ge_signed_half_solve_construct_resultvaluemaskentryproductright + 1 /\ (sto_bp_solve_construct_resultvaluemaskentryproduct) = 0) /\ (sto_bn_solve_construct_resultvaluemaskentryproduct) = S ge_signed_half_solve_construct_resultvaluemaskentryproductright))) /\ ((((((dc_value_solve_construct_resultvaluemask) = 2 * (sto_cp_solve_construct_resultvaluemaskentryproduct) /\ (sto_cn_solve_construct_resultvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_construct_resultvaluemaskentryproductoutput. (((dc_value_solve_construct_resultvaluemask) = 2 * ge_signed_half_solve_construct_resultvaluemaskentryproductoutput + 1 /\ (sto_cp_solve_construct_resultvaluemaskentryproduct) = 0) /\ (sto_cn_solve_construct_resultvaluemaskentryproduct) = S ge_signed_half_solve_construct_resultvaluemaskentryproductoutput))) /\ ((sto_ap_solve_construct_resultvaluemaskentryproduct * sto_bp_solve_construct_resultvaluemaskentryproduct + sto_an_solve_construct_resultvaluemaskentryproduct * sto_bn_solve_construct_resultvaluemaskentryproduct) + sto_cn_solve_construct_resultvaluemaskentryproduct = (sto_ap_solve_construct_resultvaluemaskentryproduct * sto_bn_solve_construct_resultvaluemaskentryproduct + sto_an_solve_construct_resultvaluemaskentryproduct * sto_bp_solve_construct_resultvaluemaskentryproduct) + sto_cp_solve_construct_resultvaluemaskentryproduct))))))))))))))) \/ ((((dc_index_solve_construct_resultvaluemask)=0 \/ ~(exists pvs_factor_solve_construct_resultvaluemaskentrynondivisor. (dc_input_solve_construct_result) = (dc_index_solve_construct_resultvaluemask) * pvs_factor_solve_construct_resultvaluemaskentrynondivisor)) /\ ((dc_value_solve_construct_resultvaluemask)=0))))))) /\ (exists dst_positive_code_solve_construct_resultvaluefold dst_positive_scale_solve_construct_resultvaluefold dst_negative_code_solve_construct_resultvaluefold dst_negative_scale_solve_construct_resultvaluefold dst_positive_sum_solve_construct_resultvaluefold dst_negative_sum_solve_construct_resultvaluefold. (((dc_mask_solve_construct_resultvalue) = (((((dst_positive_code_solve_construct_resultvaluefold) + (dst_positive_scale_solve_construct_resultvaluefold)) * S ((dst_positive_code_solve_construct_resultvaluefold) + (dst_positive_scale_solve_construct_resultvaluefold)) + ((dst_positive_scale_solve_construct_resultvaluefold) + (dst_positive_scale_solve_construct_resultvaluefold))) + (((dst_negative_code_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)) * S ((dst_negative_code_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)) + ((dst_negative_scale_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)))) * S ((((dst_positive_code_solve_construct_resultvaluefold) + (dst_positive_scale_solve_construct_resultvaluefold)) * S ((dst_positive_code_solve_construct_resultvaluefold) + (dst_positive_scale_solve_construct_resultvaluefold)) + ((dst_positive_scale_solve_construct_resultvaluefold) + (dst_positive_scale_solve_construct_resultvaluefold))) + (((dst_negative_code_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)) * S ((dst_negative_code_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)) + ((dst_negative_scale_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)))) + ((((dst_negative_code_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)) * S ((dst_negative_code_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)) + ((dst_negative_scale_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold))) + (((dst_negative_code_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)) * S ((dst_negative_code_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)) + ((dst_negative_scale_solve_construct_resultvaluefold) + (dst_negative_scale_solve_construct_resultvaluefold)))))) /\ (((exists fs_u_dst_solve_construct_resultvaluefoldpositive fs_v_dst_solve_construct_resultvaluefoldpositive. ((((exists fs_h_dst_solve_construct_resultvaluefoldpositive_body_start. fs_h_dst_solve_construct_resultvaluefoldpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_solve_construct_resultvaluefoldpositive)) /\ exists fs_q_dst_solve_construct_resultvaluefoldpositive_body_start. fs_u_dst_solve_construct_resultvaluefoldpositive = fs_q_dst_solve_construct_resultvaluefoldpositive_body_start * S ((S (0)) * fs_v_dst_solve_construct_resultvaluefoldpositive) + (0))) /\ ((((exists fs_h_dst_solve_construct_resultvaluefoldpositive_body_terminal. fs_h_dst_solve_construct_resultvaluefoldpositive_body_terminal + S (dst_positive_sum_solve_construct_resultvaluefold) = S ((S (S (dc_input_solve_construct_result))) * fs_v_dst_solve_construct_resultvaluefoldpositive)) /\ exists fs_q_dst_solve_construct_resultvaluefoldpositive_body_terminal. fs_u_dst_solve_construct_resultvaluefoldpositive = fs_q_dst_solve_construct_resultvaluefoldpositive_body_terminal * S ((S (S (dc_input_solve_construct_result))) * fs_v_dst_solve_construct_resultvaluefoldpositive) + (dst_positive_sum_solve_construct_resultvaluefold))) /\ forall fs_i_dst_solve_construct_resultvaluefoldpositive_body_steps. (exists fs_lt_dst_solve_construct_resultvaluefoldpositive_body_steps_bound. fs_lt_dst_solve_construct_resultvaluefoldpositive_body_steps_bound + S fs_i_dst_solve_construct_resultvaluefoldpositive_body_steps = S (dc_input_solve_construct_result)) -> exists fs_a_dst_solve_construct_resultvaluefoldpositive_body_steps fs_r_dst_solve_construct_resultvaluefoldpositive_body_steps fs_s_dst_solve_construct_resultvaluefoldpositive_body_steps. ((((exists fs_h_dst_solve_construct_resultvaluefoldpositive_body_steps_summand. fs_h_dst_solve_construct_resultvaluefoldpositive_body_steps_summand + S (fs_a_dst_solve_construct_resultvaluefoldpositive_body_steps) = S ((S (fs_i_dst_solve_construct_resultvaluefoldpositive_body_steps)) * dst_positive_scale_solve_construct_resultvaluefold)) /\ exists fs_q_dst_solve_construct_resultvaluefoldpositive_body_steps_summand. dst_positive_code_solve_construct_resultvaluefold = fs_q_dst_solve_construct_resultvaluefoldpositive_body_steps_summand * S ((S (fs_i_dst_solve_construct_resultvaluefoldpositive_body_steps)) * dst_positive_scale_solve_construct_resultvaluefold) + (fs_a_dst_solve_construct_resultvaluefoldpositive_body_steps))) /\ ((((exists fs_h_dst_solve_construct_resultvaluefoldpositive_body_steps_partial. fs_h_dst_solve_construct_resultvaluefoldpositive_body_steps_partial + S (fs_r_dst_solve_construct_resultvaluefoldpositive_body_steps) = S ((S (fs_i_dst_solve_construct_resultvaluefoldpositive_body_steps)) * fs_v_dst_solve_construct_resultvaluefoldpositive)) /\ exists fs_q_dst_solve_construct_resultvaluefoldpositive_body_steps_partial. fs_u_dst_solve_construct_resultvaluefoldpositive = fs_q_dst_solve_construct_resultvaluefoldpositive_body_steps_partial * S ((S (fs_i_dst_solve_construct_resultvaluefoldpositive_body_steps)) * fs_v_dst_solve_construct_resultvaluefoldpositive) + (fs_r_dst_solve_construct_resultvaluefoldpositive_body_steps))) /\ ((((exists fs_h_dst_solve_construct_resultvaluefoldpositive_body_steps_successor. fs_h_dst_solve_construct_resultvaluefoldpositive_body_steps_successor + S (fs_s_dst_solve_construct_resultvaluefoldpositive_body_steps) = S ((S (S fs_i_dst_solve_construct_resultvaluefoldpositive_body_steps)) * fs_v_dst_solve_construct_resultvaluefoldpositive)) /\ exists fs_q_dst_solve_construct_resultvaluefoldpositive_body_steps_successor. fs_u_dst_solve_construct_resultvaluefoldpositive = fs_q_dst_solve_construct_resultvaluefoldpositive_body_steps_successor * S ((S (S fs_i_dst_solve_construct_resultvaluefoldpositive_body_steps)) * fs_v_dst_solve_construct_resultvaluefoldpositive) + (fs_s_dst_solve_construct_resultvaluefoldpositive_body_steps))) /\ fs_s_dst_solve_construct_resultvaluefoldpositive_body_steps = fs_r_dst_solve_construct_resultvaluefoldpositive_body_steps + fs_a_dst_solve_construct_resultvaluefoldpositive_body_steps)))))) /\ (((exists fs_u_dst_solve_construct_resultvaluefoldnegative fs_v_dst_solve_construct_resultvaluefoldnegative. ((((exists fs_h_dst_solve_construct_resultvaluefoldnegative_body_start. fs_h_dst_solve_construct_resultvaluefoldnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_solve_construct_resultvaluefoldnegative)) /\ exists fs_q_dst_solve_construct_resultvaluefoldnegative_body_start. fs_u_dst_solve_construct_resultvaluefoldnegative = fs_q_dst_solve_construct_resultvaluefoldnegative_body_start * S ((S (0)) * fs_v_dst_solve_construct_resultvaluefoldnegative) + (0))) /\ ((((exists fs_h_dst_solve_construct_resultvaluefoldnegative_body_terminal. fs_h_dst_solve_construct_resultvaluefoldnegative_body_terminal + S (dst_negative_sum_solve_construct_resultvaluefold) = S ((S (S (dc_input_solve_construct_result))) * fs_v_dst_solve_construct_resultvaluefoldnegative)) /\ exists fs_q_dst_solve_construct_resultvaluefoldnegative_body_terminal. fs_u_dst_solve_construct_resultvaluefoldnegative = fs_q_dst_solve_construct_resultvaluefoldnegative_body_terminal * S ((S (S (dc_input_solve_construct_result))) * fs_v_dst_solve_construct_resultvaluefoldnegative) + (dst_negative_sum_solve_construct_resultvaluefold))) /\ forall fs_i_dst_solve_construct_resultvaluefoldnegative_body_steps. (exists fs_lt_dst_solve_construct_resultvaluefoldnegative_body_steps_bound. fs_lt_dst_solve_construct_resultvaluefoldnegative_body_steps_bound + S fs_i_dst_solve_construct_resultvaluefoldnegative_body_steps = S (dc_input_solve_construct_result)) -> exists fs_a_dst_solve_construct_resultvaluefoldnegative_body_steps fs_r_dst_solve_construct_resultvaluefoldnegative_body_steps fs_s_dst_solve_construct_resultvaluefoldnegative_body_steps. ((((exists fs_h_dst_solve_construct_resultvaluefoldnegative_body_steps_summand. fs_h_dst_solve_construct_resultvaluefoldnegative_body_steps_summand + S (fs_a_dst_solve_construct_resultvaluefoldnegative_body_steps) = S ((S (fs_i_dst_solve_construct_resultvaluefoldnegative_body_steps)) * dst_negative_scale_solve_construct_resultvaluefold)) /\ exists fs_q_dst_solve_construct_resultvaluefoldnegative_body_steps_summand. dst_negative_code_solve_construct_resultvaluefold = fs_q_dst_solve_construct_resultvaluefoldnegative_body_steps_summand * S ((S (fs_i_dst_solve_construct_resultvaluefoldnegative_body_steps)) * dst_negative_scale_solve_construct_resultvaluefold) + (fs_a_dst_solve_construct_resultvaluefoldnegative_body_steps))) /\ ((((exists fs_h_dst_solve_construct_resultvaluefoldnegative_body_steps_partial. fs_h_dst_solve_construct_resultvaluefoldnegative_body_steps_partial + S (fs_r_dst_solve_construct_resultvaluefoldnegative_body_steps) = S ((S (fs_i_dst_solve_construct_resultvaluefoldnegative_body_steps)) * fs_v_dst_solve_construct_resultvaluefoldnegative)) /\ exists fs_q_dst_solve_construct_resultvaluefoldnegative_body_steps_partial. fs_u_dst_solve_construct_resultvaluefoldnegative = fs_q_dst_solve_construct_resultvaluefoldnegative_body_steps_partial * S ((S (fs_i_dst_solve_construct_resultvaluefoldnegative_body_steps)) * fs_v_dst_solve_construct_resultvaluefoldnegative) + (fs_r_dst_solve_construct_resultvaluefoldnegative_body_steps))) /\ ((((exists fs_h_dst_solve_construct_resultvaluefoldnegative_body_steps_successor. fs_h_dst_solve_construct_resultvaluefoldnegative_body_steps_successor + S (fs_s_dst_solve_construct_resultvaluefoldnegative_body_steps) = S ((S (S fs_i_dst_solve_construct_resultvaluefoldnegative_body_steps)) * fs_v_dst_solve_construct_resultvaluefoldnegative)) /\ exists fs_q_dst_solve_construct_resultvaluefoldnegative_body_steps_successor. fs_u_dst_solve_construct_resultvaluefoldnegative = fs_q_dst_solve_construct_resultvaluefoldnegative_body_steps_successor * S ((S (S fs_i_dst_solve_construct_resultvaluefoldnegative_body_steps)) * fs_v_dst_solve_construct_resultvaluefoldnegative) + (fs_s_dst_solve_construct_resultvaluefoldnegative_body_steps))) /\ fs_s_dst_solve_construct_resultvaluefoldnegative_body_steps = fs_r_dst_solve_construct_resultvaluefoldnegative_body_steps + fs_a_dst_solve_construct_resultvaluefoldnegative_body_steps)))))) /\ (exists ge_balance_positive_solve_construct_resultvaluefoldresult ge_balance_negative_solve_construct_resultvaluefoldresult. (((((dc_output_solve_construct_result) = 2 * (ge_balance_positive_solve_construct_resultvaluefoldresult) /\ (ge_balance_negative_solve_construct_resultvaluefoldresult) = 0) \/ exists ge_signed_half_solve_construct_resultvaluefoldresultdecode. (((dc_output_solve_construct_result) = 2 * ge_signed_half_solve_construct_resultvaluefoldresultdecode + 1 /\ (ge_balance_positive_solve_construct_resultvaluefoldresult) = 0) /\ (ge_balance_negative_solve_construct_resultvaluefoldresult) = S ge_signed_half_solve_construct_resultvaluefoldresultdecode))) /\ ((dst_positive_sum_solve_construct_resultvaluefold) + ge_balance_negative_solve_construct_resultvaluefoldresult = (dst_negative_sum_solve_construct_resultvaluefold) + ge_balance_positive_solve_construct_resultvaluefoldresult)))))))))))))))))))) /\ (exists dst_positive_code_solve_construct_zero dst_positive_scale_solve_construct_zero dst_negative_code_solve_construct_zero dst_negative_scale_solve_construct_zero dst_positive_solve_construct_zero dst_negative_solve_construct_zero. (((G) = (((((dst_positive_code_solve_construct_zero) + (dst_positive_scale_solve_construct_zero)) * S ((dst_positive_code_solve_construct_zero) + (dst_positive_scale_solve_construct_zero)) + ((dst_positive_scale_solve_construct_zero) + (dst_positive_scale_solve_construct_zero))) + (((dst_negative_code_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)) * S ((dst_negative_code_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)) + ((dst_negative_scale_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)))) * S ((((dst_positive_code_solve_construct_zero) + (dst_positive_scale_solve_construct_zero)) * S ((dst_positive_code_solve_construct_zero) + (dst_positive_scale_solve_construct_zero)) + ((dst_positive_scale_solve_construct_zero) + (dst_positive_scale_solve_construct_zero))) + (((dst_negative_code_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)) * S ((dst_negative_code_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)) + ((dst_negative_scale_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)))) + ((((dst_negative_code_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)) * S ((dst_negative_code_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)) + ((dst_negative_scale_solve_construct_zero) + (dst_negative_scale_solve_construct_zero))) + (((dst_negative_code_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)) * S ((dst_negative_code_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)) + ((dst_negative_scale_solve_construct_zero) + (dst_negative_scale_solve_construct_zero)))))) /\ (((((exists ff_h_pvs_solve_construct_zeropositive. ff_h_pvs_solve_construct_zeropositive + S (dst_positive_solve_construct_zero) = S ((S (0)) * dst_positive_scale_solve_construct_zero)) /\ exists ff_q_pvs_solve_construct_zeropositive. dst_positive_code_solve_construct_zero = ff_q_pvs_solve_construct_zeropositive * S ((S (0)) * dst_positive_scale_solve_construct_zero) + (dst_positive_solve_construct_zero))) /\ (((((exists ff_h_pvs_solve_construct_zeronegative. ff_h_pvs_solve_construct_zeronegative + S (dst_negative_solve_construct_zero) = S ((S (0)) * dst_negative_scale_solve_construct_zero)) /\ exists ff_q_pvs_solve_construct_zeronegative. dst_negative_code_solve_construct_zero = ff_q_pvs_solve_construct_zeronegative * S ((S (0)) * dst_negative_scale_solve_construct_zero) + (dst_negative_solve_construct_zero))) /\ (exists ge_balance_positive_solve_construct_zerovalue ge_balance_negative_solve_construct_zerovalue. (((((w) = 2 * (ge_balance_positive_solve_construct_zerovalue) /\ (ge_balance_negative_solve_construct_zerovalue) = 0) \/ exists ge_signed_half_solve_construct_zerovaluedecode. (((w) = 2 * ge_signed_half_solve_construct_zerovaluedecode + 1 /\ (ge_balance_positive_solve_construct_zerovalue) = 0) /\ (ge_balance_negative_solve_construct_zerovalue) = S ge_signed_half_solve_construct_zerovaluedecode))) /\ ((dst_positive_solve_construct_zero) + ge_balance_negative_solve_construct_zerovalue = (dst_negative_solve_construct_zero) + ge_balance_positive_solve_construct_zerovalue))))))))))

Constructive proof overview

Generated structural guide

Finite induction constructs an actual solution G*F=T for every target table and signed unit F(1), with an arbitrary prescribed G(0), including actual witnesses when N=0.

The unchanged tactic script uses 7 declared prerequisites and contains 88 exact native proof lines.

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

Proof neighborhood

Direct dependencies

arithmetic_signed_table_singleton Alpha theorem; checked-use authorized dirichlet_convolution_table_zero_constructor Alpha theorem; checked-use authorized signed_table_domain_resize Alpha theorem; checked-use authorized IV0008 dirichlet_unit_equation_append arithmetic_signed_table_equal_entry_transport Alpha theorem; checked-use authorized zero_le Stable theorem; checked-use authorized succ_le_succ Stable theorem; checked-use authorized

Direct dependents

Formal native tactic body

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

Read the argument

Proof checkpoints

88 script commands · 20 reading checkpoints · 3 local claims

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

Named ingredients (1)

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

01Fix variables and assumptionsL1–1

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

  1. L1
    intro N
02Induction on NL2–10

Split the argument into the base and successor obligations. The induction hypothesis is available only in the successor branch.

  1. L2
    induction N
  2. L3
    intro F
  3. L4
    intro T
  4. L5
    intro u
  5. L6
    intro w
  6. L7
    intro hF
  7. L8
    intro hT
  8. L9
    intro hu
  9. L10
    intro hunit
03Establish hgL11–13

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply arithmetic signed table singleton.

  1. L11
    have hg : ∃ G. ArithTable(0,G) ∧ ArithAt(G,0,w)Definitions: ArithTableArithAt
  2. L12
    specialize arithmetic_signed_table_singleton (w)
  3. L13
    apply arithmetic_signed_table_singleton
04Separate the logical casesL14–15

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

  1. L14
    cases hg
  2. L15
    cases hg_witness
05Construct an explicit witnessL16–16

Supply the displayed value, then prove that it has the required property.

  1. L16
    exists x
06Separate the logical casesL17–17

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

  1. L17
    split
07Use earlier factsL18–25

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

  1. L18
    specialize dirichlet_convolution_table_zero_constructor (x)
  2. L19
    specialize dirichlet_convolution_table_zero_constructor (F)
  3. L20
    specialize dirichlet_convolution_table_zero_constructor (T)
  4. L21
    apply dirichlet_convolution_table_zero_constructor
  5. L22
    exact hg_witness_left
  6. L23
    exact hF
  7. L24
    exact hT
  8. L25
    exact hg_witness_right
08Fix variables and assumptionsL26–33

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

  1. L26
    intro F
  2. L27
    intro T
  3. L28
    intro u
  4. L29
    intro w
  5. L30
    intro hF
  6. L31
    intro hT
  7. L32
    intro hu
  8. L33
    intro hunit
09Establish hpL34–43

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

  1. L34
    have hp : ∃ G. DirichletTable(N,G,F,T) ∧ ArithAt(G,0,w)Definitions: ArithAtDirichletTable
  2. L35
    specialize IH (F)
  3. L36
    specialize IH (T)
  4. L37
    specialize IH (u)
  5. L38
    specialize IH (w)
  6. L39
    apply IH
  7. L40
    specialize signed_table_domain_resize (S N)
  8. L41
    specialize signed_table_domain_resize (N)
  9. L42
    specialize signed_table_domain_resize (F)
  10. L43
    apply signed_table_domain_resize
10Use earlier factsL44–51

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

  1. L44
    exact hF
  2. L45
    specialize signed_table_domain_resize (S N)
  3. L46
    specialize signed_table_domain_resize (N)
  4. L47
    specialize signed_table_domain_resize (T)
  5. L48
    apply signed_table_domain_resize
  6. L49
    exact hT
  7. L50
    exact hu
  8. L51
    exact hunit
11Separate the logical casesL52–53

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

  1. L52
    cases hp
  2. L53
    cases hp_witness
12Establish hxL54–63

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply dirichlet unit equation append.

  1. L54
    have hx : ∃ H. DirichletTable(S N,H,F,T) ∧ ArithTableEqual(x,H,S N)Definitions: ArithTableEqualDirichletTable
  2. L55
    specialize dirichlet_unit_equation_append (N)
  3. L56
    specialize dirichlet_unit_equation_append (F)
  4. L57
    specialize dirichlet_unit_equation_append (T)
  5. L58
    specialize dirichlet_unit_equation_append (x)
  6. L59
    specialize dirichlet_unit_equation_append (u)
  7. L60
    apply dirichlet_unit_equation_append
  8. L61
    exact hF
  9. L62
    exact hT
  10. L63
    exact hu
13Use earlier factsL64–65

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

  1. L64
    exact hunit
  2. L65
    exact hp_witness_left
14Separate the logical casesL66–67

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

  1. L66
    cases hx
  2. L67
    cases hx_witness
15Construct an explicit witnessL68–68

Supply the displayed value, then prove that it has the required property.

  1. L68
    exists x1
16Separate the logical casesL69–69

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

  1. L69
    split
17Use earlier factsL70–70

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

  1. L70
    exact hx_witness_left
18Separate the logical casesL71–71

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

  1. L71
    cases hx_witness_left
19Use earlier factsL72–81

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

  1. L72
    specialize arithmetic_signed_table_equal_entry_transport (S N)
  2. L73
    specialize arithmetic_signed_table_equal_entry_transport (x)
  3. L74
    specialize arithmetic_signed_table_equal_entry_transport (x1)
  4. L75
    specialize arithmetic_signed_table_equal_entry_transport (S N)
  5. L76
    specialize arithmetic_signed_table_equal_entry_transport (0)
  6. L77
    specialize arithmetic_signed_table_equal_entry_transport (w)
  7. L78
    apply arithmetic_signed_table_equal_entry_transport
  8. L79
    exact hx_witness_left_left
  9. L80
    exact hx_witness_right
  10. L81
    specialize zero_le (S N)
20Use earlier factsL82–88

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

  1. L82
    apply zero_le
  2. L83
    specialize succ_le_succ (0)
  3. L84
    specialize succ_le_succ (N)
  4. L85
    apply succ_le_succ
  5. L86
    specialize zero_le (N)
  6. L87
    apply zero_le
  7. L88
    exact hp_witness_right

Library-wide reading audit

Original exact command ledger · 88 lines
  1. 0001intro N
  2. 0002induction N
  3. 0003intro F
  4. 0004intro T
  5. 0005intro u
  6. 0006intro w
  7. 0007intro hF
  8. 0008intro hT
  9. 0009intro hu
  10. 0010intro hunit
  11. 0011have hg : exists G. (exists dst_positive_code_solve_base_table dst_positive_scale_solve_base_table dst_negative_code_solve_base_table dst_negative_scale_solve_base_table. (((G) = (((((dst_positive_code_solve_base_table) + (dst_positive_scale_solve_base_table)) * S ((dst_positive_code_solve_base_table) + (dst_positive_scale_solve_base_table)) + ((dst_positive_scale_solve_base_table) + (dst_positive_scale_solve_base_table))) + (((dst_negative_code_solve_base_table) + (dst_negative_scale_solve_base_table)) * S ((dst_negative_code_solve_base_table) + (dst_negative_scale_solve_base_table)) + ((dst_negative_scale_solve_base_table) + (dst_negative_scale_solve_base_table)))) * S ((((dst_positive_code_solve_base_table) + (dst_positive_scale_solve_base_table)) * S ((dst_positive_code_solve_base_table) + (dst_positive_scale_solve_base_table)) + ((dst_positive_scale_solve_base_table) + (dst_positive_scale_solve_base_table))) + (((dst_negative_code_solve_base_table) + (dst_negative_scale_solve_base_table)) * S ((dst_negative_code_solve_base_table) + (dst_negative_scale_solve_base_table)) + ((dst_negative_scale_solve_base_table) + (dst_negative_scale_solve_base_table)))) + ((((dst_negative_code_solve_base_table) + (dst_negative_scale_solve_base_table)) * S ((dst_negative_code_solve_base_table) + (dst_negative_scale_solve_base_table)) + ((dst_negative_scale_solve_base_table) + (dst_negative_scale_solve_base_table))) + (((dst_negative_code_solve_base_table) + (dst_negative_scale_solve_base_table)) * S ((dst_negative_code_solve_base_table) + (dst_negative_scale_solve_base_table)) + ((dst_negative_scale_solve_base_table) + (dst_negative_scale_solve_base_table)))))) /\ (forall dst_index_solve_base_table. (exists pvs_le_gap_solve_base_tabledomain. pvs_le_gap_solve_base_tabledomain + (dst_index_solve_base_table) = (0)) -> exists dst_positive_solve_base_table dst_negative_solve_base_table dst_value_solve_base_table. ((((exists ff_h_pvs_solve_base_tableentrypositive. ff_h_pvs_solve_base_tableentrypositive + S (dst_positive_solve_base_table) = S ((S (dst_index_solve_base_table)) * dst_positive_scale_solve_base_table)) /\ exists ff_q_pvs_solve_base_tableentrypositive. dst_positive_code_solve_base_table = ff_q_pvs_solve_base_tableentrypositive * S ((S (dst_index_solve_base_table)) * dst_positive_scale_solve_base_table) + (dst_positive_solve_base_table))) /\ (((((exists ff_h_pvs_solve_base_tableentrynegative. ff_h_pvs_solve_base_tableentrynegative + S (dst_negative_solve_base_table) = S ((S (dst_index_solve_base_table)) * dst_negative_scale_solve_base_table)) /\ exists ff_q_pvs_solve_base_tableentrynegative. dst_negative_code_solve_base_table = ff_q_pvs_solve_base_tableentrynegative * S ((S (dst_index_solve_base_table)) * dst_negative_scale_solve_base_table) + (dst_negative_solve_base_table))) /\ (exists ge_balance_positive_solve_base_tableentryvalue ge_balance_negative_solve_base_tableentryvalue. (((((dst_value_solve_base_table) = 2 * (ge_balance_positive_solve_base_tableentryvalue) /\ (ge_balance_negative_solve_base_tableentryvalue) = 0) \/ exists ge_signed_half_solve_base_tableentryvaluedecode. (((dst_value_solve_base_table) = 2 * ge_signed_half_solve_base_tableentryvaluedecode + 1 /\ (ge_balance_positive_solve_base_tableentryvalue) = 0) /\ (ge_balance_negative_solve_base_tableentryvalue) = S ge_signed_half_solve_base_tableentryvaluedecode))) /\ ((dst_positive_solve_base_table) + ge_balance_negative_solve_base_tableentryvalue = (dst_negative_solve_base_table) + ge_balance_positive_solve_base_tableentryvalue))))))))) /\ (exists dst_positive_code_solve_base_zero dst_positive_scale_solve_base_zero dst_negative_code_solve_base_zero dst_negative_scale_solve_base_zero dst_positive_solve_base_zero dst_negative_solve_base_zero. (((G) = (((((dst_positive_code_solve_base_zero) + (dst_positive_scale_solve_base_zero)) * S ((dst_positive_code_solve_base_zero) + (dst_positive_scale_solve_base_zero)) + ((dst_positive_scale_solve_base_zero) + (dst_positive_scale_solve_base_zero))) + (((dst_negative_code_solve_base_zero) + (dst_negative_scale_solve_base_zero)) * S ((dst_negative_code_solve_base_zero) + (dst_negative_scale_solve_base_zero)) + ((dst_negative_scale_solve_base_zero) + (dst_negative_scale_solve_base_zero)))) * S ((((dst_positive_code_solve_base_zero) + (dst_positive_scale_solve_base_zero)) * S ((dst_positive_code_solve_base_zero) + (dst_positive_scale_solve_base_zero)) + ((dst_positive_scale_solve_base_zero) + (dst_positive_scale_solve_base_zero))) + (((dst_negative_code_solve_base_zero) + (dst_negative_scale_solve_base_zero)) * S ((dst_negative_code_solve_base_zero) + (dst_negative_scale_solve_base_zero)) + ((dst_negative_scale_solve_base_zero) + (dst_negative_scale_solve_base_zero)))) + ((((dst_negative_code_solve_base_zero) + (dst_negative_scale_solve_base_zero)) * S ((dst_negative_code_solve_base_zero) + (dst_negative_scale_solve_base_zero)) + ((dst_negative_scale_solve_base_zero) + (dst_negative_scale_solve_base_zero))) + (((dst_negative_code_solve_base_zero) + (dst_negative_scale_solve_base_zero)) * S ((dst_negative_code_solve_base_zero) + (dst_negative_scale_solve_base_zero)) + ((dst_negative_scale_solve_base_zero) + (dst_negative_scale_solve_base_zero)))))) /\ (((((exists ff_h_pvs_solve_base_zeropositive. ff_h_pvs_solve_base_zeropositive + S (dst_positive_solve_base_zero) = S ((S (0)) * dst_positive_scale_solve_base_zero)) /\ exists ff_q_pvs_solve_base_zeropositive. dst_positive_code_solve_base_zero = ff_q_pvs_solve_base_zeropositive * S ((S (0)) * dst_positive_scale_solve_base_zero) + (dst_positive_solve_base_zero))) /\ (((((exists ff_h_pvs_solve_base_zeronegative. ff_h_pvs_solve_base_zeronegative + S (dst_negative_solve_base_zero) = S ((S (0)) * dst_negative_scale_solve_base_zero)) /\ exists ff_q_pvs_solve_base_zeronegative. dst_negative_code_solve_base_zero = ff_q_pvs_solve_base_zeronegative * S ((S (0)) * dst_negative_scale_solve_base_zero) + (dst_negative_solve_base_zero))) /\ (exists ge_balance_positive_solve_base_zerovalue ge_balance_negative_solve_base_zerovalue. (((((w) = 2 * (ge_balance_positive_solve_base_zerovalue) /\ (ge_balance_negative_solve_base_zerovalue) = 0) \/ exists ge_signed_half_solve_base_zerovaluedecode. (((w) = 2 * ge_signed_half_solve_base_zerovaluedecode + 1 /\ (ge_balance_positive_solve_base_zerovalue) = 0) /\ (ge_balance_negative_solve_base_zerovalue) = S ge_signed_half_solve_base_zerovaluedecode))) /\ ((dst_positive_solve_base_zero) + ge_balance_negative_solve_base_zerovalue = (dst_negative_solve_base_zero) + ge_balance_positive_solve_base_zerovalue)))))))))
  12. 0012specialize arithmetic_signed_table_singleton (w)
  13. 0013apply arithmetic_signed_table_singleton
  14. 0014cases hg
  15. 0015cases hg_witness
  16. 0016exists x
  17. 0017split
  18. 0018specialize dirichlet_convolution_table_zero_constructor (x)
  19. 0019specialize dirichlet_convolution_table_zero_constructor (F)
  20. 0020specialize dirichlet_convolution_table_zero_constructor (T)
  21. 0021apply dirichlet_convolution_table_zero_constructor
  22. 0022exact hg_witness_left
  23. 0023exact hF
  24. 0024exact hT
  25. 0025exact hg_witness_right
  26. 0026intro F
  27. 0027intro T
  28. 0028intro u
  29. 0029intro w
  30. 0030intro hF
  31. 0031intro hT
  32. 0032intro hu
  33. 0033intro hunit
  34. 0034have hp : exists G. ((((exists dst_positive_code_solve_previousleft dst_positive_scale_solve_previousleft dst_negative_code_solve_previousleft dst_negative_scale_solve_previousleft. (((G) = (((((dst_positive_code_solve_previousleft) + (dst_positive_scale_solve_previousleft)) * S ((dst_positive_code_solve_previousleft) + (dst_positive_scale_solve_previousleft)) + ((dst_positive_scale_solve_previousleft) + (dst_positive_scale_solve_previousleft))) + (((dst_negative_code_solve_previousleft) + (dst_negative_scale_solve_previousleft)) * S ((dst_negative_code_solve_previousleft) + (dst_negative_scale_solve_previousleft)) + ((dst_negative_scale_solve_previousleft) + (dst_negative_scale_solve_previousleft)))) * S ((((dst_positive_code_solve_previousleft) + (dst_positive_scale_solve_previousleft)) * S ((dst_positive_code_solve_previousleft) + (dst_positive_scale_solve_previousleft)) + ((dst_positive_scale_solve_previousleft) + (dst_positive_scale_solve_previousleft))) + (((dst_negative_code_solve_previousleft) + (dst_negative_scale_solve_previousleft)) * S ((dst_negative_code_solve_previousleft) + (dst_negative_scale_solve_previousleft)) + ((dst_negative_scale_solve_previousleft) + (dst_negative_scale_solve_previousleft)))) + ((((dst_negative_code_solve_previousleft) + (dst_negative_scale_solve_previousleft)) * S ((dst_negative_code_solve_previousleft) + (dst_negative_scale_solve_previousleft)) + ((dst_negative_scale_solve_previousleft) + (dst_negative_scale_solve_previousleft))) + (((dst_negative_code_solve_previousleft) + (dst_negative_scale_solve_previousleft)) * S ((dst_negative_code_solve_previousleft) + (dst_negative_scale_solve_previousleft)) + ((dst_negative_scale_solve_previousleft) + (dst_negative_scale_solve_previousleft)))))) /\ (forall dst_index_solve_previousleft. (exists pvs_le_gap_solve_previousleftdomain. pvs_le_gap_solve_previousleftdomain + (dst_index_solve_previousleft) = (N)) -> exists dst_positive_solve_previousleft dst_negative_solve_previousleft dst_value_solve_previousleft. ((((exists ff_h_pvs_solve_previousleftentrypositive. ff_h_pvs_solve_previousleftentrypositive + S (dst_positive_solve_previousleft) = S ((S (dst_index_solve_previousleft)) * dst_positive_scale_solve_previousleft)) /\ exists ff_q_pvs_solve_previousleftentrypositive. dst_positive_code_solve_previousleft = ff_q_pvs_solve_previousleftentrypositive * S ((S (dst_index_solve_previousleft)) * dst_positive_scale_solve_previousleft) + (dst_positive_solve_previousleft))) /\ (((((exists ff_h_pvs_solve_previousleftentrynegative. ff_h_pvs_solve_previousleftentrynegative + S (dst_negative_solve_previousleft) = S ((S (dst_index_solve_previousleft)) * dst_negative_scale_solve_previousleft)) /\ exists ff_q_pvs_solve_previousleftentrynegative. dst_negative_code_solve_previousleft = ff_q_pvs_solve_previousleftentrynegative * S ((S (dst_index_solve_previousleft)) * dst_negative_scale_solve_previousleft) + (dst_negative_solve_previousleft))) /\ (exists ge_balance_positive_solve_previousleftentryvalue ge_balance_negative_solve_previousleftentryvalue. (((((dst_value_solve_previousleft) = 2 * (ge_balance_positive_solve_previousleftentryvalue) /\ (ge_balance_negative_solve_previousleftentryvalue) = 0) \/ exists ge_signed_half_solve_previousleftentryvaluedecode. (((dst_value_solve_previousleft) = 2 * ge_signed_half_solve_previousleftentryvaluedecode + 1 /\ (ge_balance_positive_solve_previousleftentryvalue) = 0) /\ (ge_balance_negative_solve_previousleftentryvalue) = S ge_signed_half_solve_previousleftentryvaluedecode))) /\ ((dst_positive_solve_previousleft) + ge_balance_negative_solve_previousleftentryvalue = (dst_negative_solve_previousleft) + ge_balance_positive_solve_previousleftentryvalue))))))))) /\ (((exists dst_positive_code_solve_previousright dst_positive_scale_solve_previousright dst_negative_code_solve_previousright dst_negative_scale_solve_previousright. (((F) = (((((dst_positive_code_solve_previousright) + (dst_positive_scale_solve_previousright)) * S ((dst_positive_code_solve_previousright) + (dst_positive_scale_solve_previousright)) + ((dst_positive_scale_solve_previousright) + (dst_positive_scale_solve_previousright))) + (((dst_negative_code_solve_previousright) + (dst_negative_scale_solve_previousright)) * S ((dst_negative_code_solve_previousright) + (dst_negative_scale_solve_previousright)) + ((dst_negative_scale_solve_previousright) + (dst_negative_scale_solve_previousright)))) * S ((((dst_positive_code_solve_previousright) + (dst_positive_scale_solve_previousright)) * S ((dst_positive_code_solve_previousright) + (dst_positive_scale_solve_previousright)) + ((dst_positive_scale_solve_previousright) + (dst_positive_scale_solve_previousright))) + (((dst_negative_code_solve_previousright) + (dst_negative_scale_solve_previousright)) * S ((dst_negative_code_solve_previousright) + (dst_negative_scale_solve_previousright)) + ((dst_negative_scale_solve_previousright) + (dst_negative_scale_solve_previousright)))) + ((((dst_negative_code_solve_previousright) + (dst_negative_scale_solve_previousright)) * S ((dst_negative_code_solve_previousright) + (dst_negative_scale_solve_previousright)) + ((dst_negative_scale_solve_previousright) + (dst_negative_scale_solve_previousright))) + (((dst_negative_code_solve_previousright) + (dst_negative_scale_solve_previousright)) * S ((dst_negative_code_solve_previousright) + (dst_negative_scale_solve_previousright)) + ((dst_negative_scale_solve_previousright) + (dst_negative_scale_solve_previousright)))))) /\ (forall dst_index_solve_previousright. (exists pvs_le_gap_solve_previousrightdomain. pvs_le_gap_solve_previousrightdomain + (dst_index_solve_previousright) = (N)) -> exists dst_positive_solve_previousright dst_negative_solve_previousright dst_value_solve_previousright. ((((exists ff_h_pvs_solve_previousrightentrypositive. ff_h_pvs_solve_previousrightentrypositive + S (dst_positive_solve_previousright) = S ((S (dst_index_solve_previousright)) * dst_positive_scale_solve_previousright)) /\ exists ff_q_pvs_solve_previousrightentrypositive. dst_positive_code_solve_previousright = ff_q_pvs_solve_previousrightentrypositive * S ((S (dst_index_solve_previousright)) * dst_positive_scale_solve_previousright) + (dst_positive_solve_previousright))) /\ (((((exists ff_h_pvs_solve_previousrightentrynegative. ff_h_pvs_solve_previousrightentrynegative + S (dst_negative_solve_previousright) = S ((S (dst_index_solve_previousright)) * dst_negative_scale_solve_previousright)) /\ exists ff_q_pvs_solve_previousrightentrynegative. dst_negative_code_solve_previousright = ff_q_pvs_solve_previousrightentrynegative * S ((S (dst_index_solve_previousright)) * dst_negative_scale_solve_previousright) + (dst_negative_solve_previousright))) /\ (exists ge_balance_positive_solve_previousrightentryvalue ge_balance_negative_solve_previousrightentryvalue. (((((dst_value_solve_previousright) = 2 * (ge_balance_positive_solve_previousrightentryvalue) /\ (ge_balance_negative_solve_previousrightentryvalue) = 0) \/ exists ge_signed_half_solve_previousrightentryvaluedecode. (((dst_value_solve_previousright) = 2 * ge_signed_half_solve_previousrightentryvaluedecode + 1 /\ (ge_balance_positive_solve_previousrightentryvalue) = 0) /\ (ge_balance_negative_solve_previousrightentryvalue) = S ge_signed_half_solve_previousrightentryvaluedecode))) /\ ((dst_positive_solve_previousright) + ge_balance_negative_solve_previousrightentryvalue = (dst_negative_solve_previousright) + ge_balance_positive_solve_previousrightentryvalue))))))))) /\ (((exists dst_positive_code_solve_previoustable dst_positive_scale_solve_previoustable dst_negative_code_solve_previoustable dst_negative_scale_solve_previoustable. (((T) = (((((dst_positive_code_solve_previoustable) + (dst_positive_scale_solve_previoustable)) * S ((dst_positive_code_solve_previoustable) + (dst_positive_scale_solve_previoustable)) + ((dst_positive_scale_solve_previoustable) + (dst_positive_scale_solve_previoustable))) + (((dst_negative_code_solve_previoustable) + (dst_negative_scale_solve_previoustable)) * S ((dst_negative_code_solve_previoustable) + (dst_negative_scale_solve_previoustable)) + ((dst_negative_scale_solve_previoustable) + (dst_negative_scale_solve_previoustable)))) * S ((((dst_positive_code_solve_previoustable) + (dst_positive_scale_solve_previoustable)) * S ((dst_positive_code_solve_previoustable) + (dst_positive_scale_solve_previoustable)) + ((dst_positive_scale_solve_previoustable) + (dst_positive_scale_solve_previoustable))) + (((dst_negative_code_solve_previoustable) + (dst_negative_scale_solve_previoustable)) * S ((dst_negative_code_solve_previoustable) + (dst_negative_scale_solve_previoustable)) + ((dst_negative_scale_solve_previoustable) + (dst_negative_scale_solve_previoustable)))) + ((((dst_negative_code_solve_previoustable) + (dst_negative_scale_solve_previoustable)) * S ((dst_negative_code_solve_previoustable) + (dst_negative_scale_solve_previoustable)) + ((dst_negative_scale_solve_previoustable) + (dst_negative_scale_solve_previoustable))) + (((dst_negative_code_solve_previoustable) + (dst_negative_scale_solve_previoustable)) * S ((dst_negative_code_solve_previoustable) + (dst_negative_scale_solve_previoustable)) + ((dst_negative_scale_solve_previoustable) + (dst_negative_scale_solve_previoustable)))))) /\ (forall dst_index_solve_previoustable. (exists pvs_le_gap_solve_previoustabledomain. pvs_le_gap_solve_previoustabledomain + (dst_index_solve_previoustable) = (N)) -> exists dst_positive_solve_previoustable dst_negative_solve_previoustable dst_value_solve_previoustable. ((((exists ff_h_pvs_solve_previoustableentrypositive. ff_h_pvs_solve_previoustableentrypositive + S (dst_positive_solve_previoustable) = S ((S (dst_index_solve_previoustable)) * dst_positive_scale_solve_previoustable)) /\ exists ff_q_pvs_solve_previoustableentrypositive. dst_positive_code_solve_previoustable = ff_q_pvs_solve_previoustableentrypositive * S ((S (dst_index_solve_previoustable)) * dst_positive_scale_solve_previoustable) + (dst_positive_solve_previoustable))) /\ (((((exists ff_h_pvs_solve_previoustableentrynegative. ff_h_pvs_solve_previoustableentrynegative + S (dst_negative_solve_previoustable) = S ((S (dst_index_solve_previoustable)) * dst_negative_scale_solve_previoustable)) /\ exists ff_q_pvs_solve_previoustableentrynegative. dst_negative_code_solve_previoustable = ff_q_pvs_solve_previoustableentrynegative * S ((S (dst_index_solve_previoustable)) * dst_negative_scale_solve_previoustable) + (dst_negative_solve_previoustable))) /\ (exists ge_balance_positive_solve_previoustableentryvalue ge_balance_negative_solve_previoustableentryvalue. (((((dst_value_solve_previoustable) = 2 * (ge_balance_positive_solve_previoustableentryvalue) /\ (ge_balance_negative_solve_previoustableentryvalue) = 0) \/ exists ge_signed_half_solve_previoustableentryvaluedecode. (((dst_value_solve_previoustable) = 2 * ge_signed_half_solve_previoustableentryvaluedecode + 1 /\ (ge_balance_positive_solve_previoustableentryvalue) = 0) /\ (ge_balance_negative_solve_previoustableentryvalue) = S ge_signed_half_solve_previoustableentryvaluedecode))) /\ ((dst_positive_solve_previoustable) + ge_balance_negative_solve_previoustableentryvalue = (dst_negative_solve_previoustable) + ge_balance_positive_solve_previoustableentryvalue))))))))) /\ (forall dc_input_solve_previous dc_output_solve_previous. ~(dc_input_solve_previous=0) -> (exists pvs_le_gap_solve_previousdomain. pvs_le_gap_solve_previousdomain + (dc_input_solve_previous) = (N)) -> (exists dst_positive_code_solve_previouslookup dst_positive_scale_solve_previouslookup dst_negative_code_solve_previouslookup dst_negative_scale_solve_previouslookup dst_positive_solve_previouslookup dst_negative_solve_previouslookup. (((T) = (((((dst_positive_code_solve_previouslookup) + (dst_positive_scale_solve_previouslookup)) * S ((dst_positive_code_solve_previouslookup) + (dst_positive_scale_solve_previouslookup)) + ((dst_positive_scale_solve_previouslookup) + (dst_positive_scale_solve_previouslookup))) + (((dst_negative_code_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)) * S ((dst_negative_code_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)) + ((dst_negative_scale_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)))) * S ((((dst_positive_code_solve_previouslookup) + (dst_positive_scale_solve_previouslookup)) * S ((dst_positive_code_solve_previouslookup) + (dst_positive_scale_solve_previouslookup)) + ((dst_positive_scale_solve_previouslookup) + (dst_positive_scale_solve_previouslookup))) + (((dst_negative_code_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)) * S ((dst_negative_code_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)) + ((dst_negative_scale_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)))) + ((((dst_negative_code_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)) * S ((dst_negative_code_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)) + ((dst_negative_scale_solve_previouslookup) + (dst_negative_scale_solve_previouslookup))) + (((dst_negative_code_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)) * S ((dst_negative_code_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)) + ((dst_negative_scale_solve_previouslookup) + (dst_negative_scale_solve_previouslookup)))))) /\ (((((exists ff_h_pvs_solve_previouslookuppositive. ff_h_pvs_solve_previouslookuppositive + S (dst_positive_solve_previouslookup) = S ((S (dc_input_solve_previous)) * dst_positive_scale_solve_previouslookup)) /\ exists ff_q_pvs_solve_previouslookuppositive. dst_positive_code_solve_previouslookup = ff_q_pvs_solve_previouslookuppositive * S ((S (dc_input_solve_previous)) * dst_positive_scale_solve_previouslookup) + (dst_positive_solve_previouslookup))) /\ (((((exists ff_h_pvs_solve_previouslookupnegative. ff_h_pvs_solve_previouslookupnegative + S (dst_negative_solve_previouslookup) = S ((S (dc_input_solve_previous)) * dst_negative_scale_solve_previouslookup)) /\ exists ff_q_pvs_solve_previouslookupnegative. dst_negative_code_solve_previouslookup = ff_q_pvs_solve_previouslookupnegative * S ((S (dc_input_solve_previous)) * dst_negative_scale_solve_previouslookup) + (dst_negative_solve_previouslookup))) /\ (exists ge_balance_positive_solve_previouslookupvalue ge_balance_negative_solve_previouslookupvalue. (((((dc_output_solve_previous) = 2 * (ge_balance_positive_solve_previouslookupvalue) /\ (ge_balance_negative_solve_previouslookupvalue) = 0) \/ exists ge_signed_half_solve_previouslookupvaluedecode. (((dc_output_solve_previous) = 2 * ge_signed_half_solve_previouslookupvaluedecode + 1 /\ (ge_balance_positive_solve_previouslookupvalue) = 0) /\ (ge_balance_negative_solve_previouslookupvalue) = S ge_signed_half_solve_previouslookupvaluedecode))) /\ ((dst_positive_solve_previouslookup) + ge_balance_negative_solve_previouslookupvalue = (dst_negative_solve_previouslookup) + ge_balance_positive_solve_previouslookupvalue))))))))) -> (((~((dc_input_solve_previous)=0)) /\ (exists dc_mask_solve_previousvalue. ((((exists dst_positive_code_solve_previousvaluemasktable dst_positive_scale_solve_previousvaluemasktable dst_negative_code_solve_previousvaluemasktable dst_negative_scale_solve_previousvaluemasktable. (((dc_mask_solve_previousvalue) = (((((dst_positive_code_solve_previousvaluemasktable) + (dst_positive_scale_solve_previousvaluemasktable)) * S ((dst_positive_code_solve_previousvaluemasktable) + (dst_positive_scale_solve_previousvaluemasktable)) + ((dst_positive_scale_solve_previousvaluemasktable) + (dst_positive_scale_solve_previousvaluemasktable))) + (((dst_negative_code_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)) * S ((dst_negative_code_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)) + ((dst_negative_scale_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)))) * S ((((dst_positive_code_solve_previousvaluemasktable) + (dst_positive_scale_solve_previousvaluemasktable)) * S ((dst_positive_code_solve_previousvaluemasktable) + (dst_positive_scale_solve_previousvaluemasktable)) + ((dst_positive_scale_solve_previousvaluemasktable) + (dst_positive_scale_solve_previousvaluemasktable))) + (((dst_negative_code_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)) * S ((dst_negative_code_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)) + ((dst_negative_scale_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)))) + ((((dst_negative_code_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)) * S ((dst_negative_code_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)) + ((dst_negative_scale_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable))) + (((dst_negative_code_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)) * S ((dst_negative_code_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)) + ((dst_negative_scale_solve_previousvaluemasktable) + (dst_negative_scale_solve_previousvaluemasktable)))))) /\ (forall dst_index_solve_previousvaluemasktable. (exists pvs_le_gap_solve_previousvaluemasktabledomain. pvs_le_gap_solve_previousvaluemasktabledomain + (dst_index_solve_previousvaluemasktable) = (dc_input_solve_previous)) -> exists dst_positive_solve_previousvaluemasktable dst_negative_solve_previousvaluemasktable dst_value_solve_previousvaluemasktable. ((((exists ff_h_pvs_solve_previousvaluemasktableentrypositive. ff_h_pvs_solve_previousvaluemasktableentrypositive + S (dst_positive_solve_previousvaluemasktable) = S ((S (dst_index_solve_previousvaluemasktable)) * dst_positive_scale_solve_previousvaluemasktable)) /\ exists ff_q_pvs_solve_previousvaluemasktableentrypositive. dst_positive_code_solve_previousvaluemasktable = ff_q_pvs_solve_previousvaluemasktableentrypositive * S ((S (dst_index_solve_previousvaluemasktable)) * dst_positive_scale_solve_previousvaluemasktable) + (dst_positive_solve_previousvaluemasktable))) /\ (((((exists ff_h_pvs_solve_previousvaluemasktableentrynegative. ff_h_pvs_solve_previousvaluemasktableentrynegative + S (dst_negative_solve_previousvaluemasktable) = S ((S (dst_index_solve_previousvaluemasktable)) * dst_negative_scale_solve_previousvaluemasktable)) /\ exists ff_q_pvs_solve_previousvaluemasktableentrynegative. dst_negative_code_solve_previousvaluemasktable = ff_q_pvs_solve_previousvaluemasktableentrynegative * S ((S (dst_index_solve_previousvaluemasktable)) * dst_negative_scale_solve_previousvaluemasktable) + (dst_negative_solve_previousvaluemasktable))) /\ (exists ge_balance_positive_solve_previousvaluemasktableentryvalue ge_balance_negative_solve_previousvaluemasktableentryvalue. (((((dst_value_solve_previousvaluemasktable) = 2 * (ge_balance_positive_solve_previousvaluemasktableentryvalue) /\ (ge_balance_negative_solve_previousvaluemasktableentryvalue) = 0) \/ exists ge_signed_half_solve_previousvaluemasktableentryvaluedecode. (((dst_value_solve_previousvaluemasktable) = 2 * ge_signed_half_solve_previousvaluemasktableentryvaluedecode + 1 /\ (ge_balance_positive_solve_previousvaluemasktableentryvalue) = 0) /\ (ge_balance_negative_solve_previousvaluemasktableentryvalue) = S ge_signed_half_solve_previousvaluemasktableentryvaluedecode))) /\ ((dst_positive_solve_previousvaluemasktable) + ge_balance_negative_solve_previousvaluemasktableentryvalue = (dst_negative_solve_previousvaluemasktable) + ge_balance_positive_solve_previousvaluemasktableentryvalue))))))))) /\ (forall dc_index_solve_previousvaluemask dc_value_solve_previousvaluemask. (exists pvs_le_gap_solve_previousvaluemaskdomain. pvs_le_gap_solve_previousvaluemaskdomain + (dc_index_solve_previousvaluemask) = (dc_input_solve_previous)) -> (exists dst_positive_code_solve_previousvaluemasklookup dst_positive_scale_solve_previousvaluemasklookup dst_negative_code_solve_previousvaluemasklookup dst_negative_scale_solve_previousvaluemasklookup dst_positive_solve_previousvaluemasklookup dst_negative_solve_previousvaluemasklookup. (((dc_mask_solve_previousvalue) = (((((dst_positive_code_solve_previousvaluemasklookup) + (dst_positive_scale_solve_previousvaluemasklookup)) * S ((dst_positive_code_solve_previousvaluemasklookup) + (dst_positive_scale_solve_previousvaluemasklookup)) + ((dst_positive_scale_solve_previousvaluemasklookup) + (dst_positive_scale_solve_previousvaluemasklookup))) + (((dst_negative_code_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)) * S ((dst_negative_code_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)) + ((dst_negative_scale_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)))) * S ((((dst_positive_code_solve_previousvaluemasklookup) + (dst_positive_scale_solve_previousvaluemasklookup)) * S ((dst_positive_code_solve_previousvaluemasklookup) + (dst_positive_scale_solve_previousvaluemasklookup)) + ((dst_positive_scale_solve_previousvaluemasklookup) + (dst_positive_scale_solve_previousvaluemasklookup))) + (((dst_negative_code_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)) * S ((dst_negative_code_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)) + ((dst_negative_scale_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)))) + ((((dst_negative_code_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)) * S ((dst_negative_code_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)) + ((dst_negative_scale_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup))) + (((dst_negative_code_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)) * S ((dst_negative_code_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)) + ((dst_negative_scale_solve_previousvaluemasklookup) + (dst_negative_scale_solve_previousvaluemasklookup)))))) /\ (((((exists ff_h_pvs_solve_previousvaluemasklookuppositive. ff_h_pvs_solve_previousvaluemasklookuppositive + S (dst_positive_solve_previousvaluemasklookup) = S ((S (dc_index_solve_previousvaluemask)) * dst_positive_scale_solve_previousvaluemasklookup)) /\ exists ff_q_pvs_solve_previousvaluemasklookuppositive. dst_positive_code_solve_previousvaluemasklookup = ff_q_pvs_solve_previousvaluemasklookuppositive * S ((S (dc_index_solve_previousvaluemask)) * dst_positive_scale_solve_previousvaluemasklookup) + (dst_positive_solve_previousvaluemasklookup))) /\ (((((exists ff_h_pvs_solve_previousvaluemasklookupnegative. ff_h_pvs_solve_previousvaluemasklookupnegative + S (dst_negative_solve_previousvaluemasklookup) = S ((S (dc_index_solve_previousvaluemask)) * dst_negative_scale_solve_previousvaluemasklookup)) /\ exists ff_q_pvs_solve_previousvaluemasklookupnegative. dst_negative_code_solve_previousvaluemasklookup = ff_q_pvs_solve_previousvaluemasklookupnegative * S ((S (dc_index_solve_previousvaluemask)) * dst_negative_scale_solve_previousvaluemasklookup) + (dst_negative_solve_previousvaluemasklookup))) /\ (exists ge_balance_positive_solve_previousvaluemasklookupvalue ge_balance_negative_solve_previousvaluemasklookupvalue. (((((dc_value_solve_previousvaluemask) = 2 * (ge_balance_positive_solve_previousvaluemasklookupvalue) /\ (ge_balance_negative_solve_previousvaluemasklookupvalue) = 0) \/ exists ge_signed_half_solve_previousvaluemasklookupvaluedecode. (((dc_value_solve_previousvaluemask) = 2 * ge_signed_half_solve_previousvaluemasklookupvaluedecode + 1 /\ (ge_balance_positive_solve_previousvaluemasklookupvalue) = 0) /\ (ge_balance_negative_solve_previousvaluemasklookupvalue) = S ge_signed_half_solve_previousvaluemasklookupvaluedecode))) /\ ((dst_positive_solve_previousvaluemasklookup) + ge_balance_negative_solve_previousvaluemasklookupvalue = (dst_negative_solve_previousvaluemasklookup) + ge_balance_positive_solve_previousvaluemasklookupvalue))))))))) -> ((((~((dc_index_solve_previousvaluemask)=0)) /\ (exists dc_quotient_solve_previousvaluemaskentry dc_left_solve_previousvaluemaskentry dc_right_solve_previousvaluemaskentry. (((dc_input_solve_previous)=(dc_index_solve_previousvaluemask)*dc_quotient_solve_previousvaluemaskentry) /\ (((exists dst_positive_code_solve_previousvaluemaskentryleft dst_positive_scale_solve_previousvaluemaskentryleft dst_negative_code_solve_previousvaluemaskentryleft dst_negative_scale_solve_previousvaluemaskentryleft dst_positive_solve_previousvaluemaskentryleft dst_negative_solve_previousvaluemaskentryleft. (((G) = (((((dst_positive_code_solve_previousvaluemaskentryleft) + (dst_positive_scale_solve_previousvaluemaskentryleft)) * S ((dst_positive_code_solve_previousvaluemaskentryleft) + (dst_positive_scale_solve_previousvaluemaskentryleft)) + ((dst_positive_scale_solve_previousvaluemaskentryleft) + (dst_positive_scale_solve_previousvaluemaskentryleft))) + (((dst_negative_code_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)) * S ((dst_negative_code_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)) + ((dst_negative_scale_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)))) * S ((((dst_positive_code_solve_previousvaluemaskentryleft) + (dst_positive_scale_solve_previousvaluemaskentryleft)) * S ((dst_positive_code_solve_previousvaluemaskentryleft) + (dst_positive_scale_solve_previousvaluemaskentryleft)) + ((dst_positive_scale_solve_previousvaluemaskentryleft) + (dst_positive_scale_solve_previousvaluemaskentryleft))) + (((dst_negative_code_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)) * S ((dst_negative_code_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)) + ((dst_negative_scale_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)))) + ((((dst_negative_code_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)) * S ((dst_negative_code_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)) + ((dst_negative_scale_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft))) + (((dst_negative_code_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)) * S ((dst_negative_code_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)) + ((dst_negative_scale_solve_previousvaluemaskentryleft) + (dst_negative_scale_solve_previousvaluemaskentryleft)))))) /\ (((((exists ff_h_pvs_solve_previousvaluemaskentryleftpositive. ff_h_pvs_solve_previousvaluemaskentryleftpositive + S (dst_positive_solve_previousvaluemaskentryleft) = S ((S (dc_index_solve_previousvaluemask)) * dst_positive_scale_solve_previousvaluemaskentryleft)) /\ exists ff_q_pvs_solve_previousvaluemaskentryleftpositive. dst_positive_code_solve_previousvaluemaskentryleft = ff_q_pvs_solve_previousvaluemaskentryleftpositive * S ((S (dc_index_solve_previousvaluemask)) * dst_positive_scale_solve_previousvaluemaskentryleft) + (dst_positive_solve_previousvaluemaskentryleft))) /\ (((((exists ff_h_pvs_solve_previousvaluemaskentryleftnegative. ff_h_pvs_solve_previousvaluemaskentryleftnegative + S (dst_negative_solve_previousvaluemaskentryleft) = S ((S (dc_index_solve_previousvaluemask)) * dst_negative_scale_solve_previousvaluemaskentryleft)) /\ exists ff_q_pvs_solve_previousvaluemaskentryleftnegative. dst_negative_code_solve_previousvaluemaskentryleft = ff_q_pvs_solve_previousvaluemaskentryleftnegative * S ((S (dc_index_solve_previousvaluemask)) * dst_negative_scale_solve_previousvaluemaskentryleft) + (dst_negative_solve_previousvaluemaskentryleft))) /\ (exists ge_balance_positive_solve_previousvaluemaskentryleftvalue ge_balance_negative_solve_previousvaluemaskentryleftvalue. (((((dc_left_solve_previousvaluemaskentry) = 2 * (ge_balance_positive_solve_previousvaluemaskentryleftvalue) /\ (ge_balance_negative_solve_previousvaluemaskentryleftvalue) = 0) \/ exists ge_signed_half_solve_previousvaluemaskentryleftvaluedecode. (((dc_left_solve_previousvaluemaskentry) = 2 * ge_signed_half_solve_previousvaluemaskentryleftvaluedecode + 1 /\ (ge_balance_positive_solve_previousvaluemaskentryleftvalue) = 0) /\ (ge_balance_negative_solve_previousvaluemaskentryleftvalue) = S ge_signed_half_solve_previousvaluemaskentryleftvaluedecode))) /\ ((dst_positive_solve_previousvaluemaskentryleft) + ge_balance_negative_solve_previousvaluemaskentryleftvalue = (dst_negative_solve_previousvaluemaskentryleft) + ge_balance_positive_solve_previousvaluemaskentryleftvalue))))))))) /\ (((exists dst_positive_code_solve_previousvaluemaskentryright dst_positive_scale_solve_previousvaluemaskentryright dst_negative_code_solve_previousvaluemaskentryright dst_negative_scale_solve_previousvaluemaskentryright dst_positive_solve_previousvaluemaskentryright dst_negative_solve_previousvaluemaskentryright. (((F) = (((((dst_positive_code_solve_previousvaluemaskentryright) + (dst_positive_scale_solve_previousvaluemaskentryright)) * S ((dst_positive_code_solve_previousvaluemaskentryright) + (dst_positive_scale_solve_previousvaluemaskentryright)) + ((dst_positive_scale_solve_previousvaluemaskentryright) + (dst_positive_scale_solve_previousvaluemaskentryright))) + (((dst_negative_code_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)) * S ((dst_negative_code_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)) + ((dst_negative_scale_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)))) * S ((((dst_positive_code_solve_previousvaluemaskentryright) + (dst_positive_scale_solve_previousvaluemaskentryright)) * S ((dst_positive_code_solve_previousvaluemaskentryright) + (dst_positive_scale_solve_previousvaluemaskentryright)) + ((dst_positive_scale_solve_previousvaluemaskentryright) + (dst_positive_scale_solve_previousvaluemaskentryright))) + (((dst_negative_code_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)) * S ((dst_negative_code_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)) + ((dst_negative_scale_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)))) + ((((dst_negative_code_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)) * S ((dst_negative_code_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)) + ((dst_negative_scale_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright))) + (((dst_negative_code_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)) * S ((dst_negative_code_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)) + ((dst_negative_scale_solve_previousvaluemaskentryright) + (dst_negative_scale_solve_previousvaluemaskentryright)))))) /\ (((((exists ff_h_pvs_solve_previousvaluemaskentryrightpositive. ff_h_pvs_solve_previousvaluemaskentryrightpositive + S (dst_positive_solve_previousvaluemaskentryright) = S ((S (dc_quotient_solve_previousvaluemaskentry)) * dst_positive_scale_solve_previousvaluemaskentryright)) /\ exists ff_q_pvs_solve_previousvaluemaskentryrightpositive. dst_positive_code_solve_previousvaluemaskentryright = ff_q_pvs_solve_previousvaluemaskentryrightpositive * S ((S (dc_quotient_solve_previousvaluemaskentry)) * dst_positive_scale_solve_previousvaluemaskentryright) + (dst_positive_solve_previousvaluemaskentryright))) /\ (((((exists ff_h_pvs_solve_previousvaluemaskentryrightnegative. ff_h_pvs_solve_previousvaluemaskentryrightnegative + S (dst_negative_solve_previousvaluemaskentryright) = S ((S (dc_quotient_solve_previousvaluemaskentry)) * dst_negative_scale_solve_previousvaluemaskentryright)) /\ exists ff_q_pvs_solve_previousvaluemaskentryrightnegative. dst_negative_code_solve_previousvaluemaskentryright = ff_q_pvs_solve_previousvaluemaskentryrightnegative * S ((S (dc_quotient_solve_previousvaluemaskentry)) * dst_negative_scale_solve_previousvaluemaskentryright) + (dst_negative_solve_previousvaluemaskentryright))) /\ (exists ge_balance_positive_solve_previousvaluemaskentryrightvalue ge_balance_negative_solve_previousvaluemaskentryrightvalue. (((((dc_right_solve_previousvaluemaskentry) = 2 * (ge_balance_positive_solve_previousvaluemaskentryrightvalue) /\ (ge_balance_negative_solve_previousvaluemaskentryrightvalue) = 0) \/ exists ge_signed_half_solve_previousvaluemaskentryrightvaluedecode. (((dc_right_solve_previousvaluemaskentry) = 2 * ge_signed_half_solve_previousvaluemaskentryrightvaluedecode + 1 /\ (ge_balance_positive_solve_previousvaluemaskentryrightvalue) = 0) /\ (ge_balance_negative_solve_previousvaluemaskentryrightvalue) = S ge_signed_half_solve_previousvaluemaskentryrightvaluedecode))) /\ ((dst_positive_solve_previousvaluemaskentryright) + ge_balance_negative_solve_previousvaluemaskentryrightvalue = (dst_negative_solve_previousvaluemaskentryright) + ge_balance_positive_solve_previousvaluemaskentryrightvalue))))))))) /\ (exists sto_ap_solve_previousvaluemaskentryproduct sto_an_solve_previousvaluemaskentryproduct sto_bp_solve_previousvaluemaskentryproduct sto_bn_solve_previousvaluemaskentryproduct sto_cp_solve_previousvaluemaskentryproduct sto_cn_solve_previousvaluemaskentryproduct. (((((dc_left_solve_previousvaluemaskentry) = 2 * (sto_ap_solve_previousvaluemaskentryproduct) /\ (sto_an_solve_previousvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_previousvaluemaskentryproductleft. (((dc_left_solve_previousvaluemaskentry) = 2 * ge_signed_half_solve_previousvaluemaskentryproductleft + 1 /\ (sto_ap_solve_previousvaluemaskentryproduct) = 0) /\ (sto_an_solve_previousvaluemaskentryproduct) = S ge_signed_half_solve_previousvaluemaskentryproductleft))) /\ ((((((dc_right_solve_previousvaluemaskentry) = 2 * (sto_bp_solve_previousvaluemaskentryproduct) /\ (sto_bn_solve_previousvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_previousvaluemaskentryproductright. (((dc_right_solve_previousvaluemaskentry) = 2 * ge_signed_half_solve_previousvaluemaskentryproductright + 1 /\ (sto_bp_solve_previousvaluemaskentryproduct) = 0) /\ (sto_bn_solve_previousvaluemaskentryproduct) = S ge_signed_half_solve_previousvaluemaskentryproductright))) /\ ((((((dc_value_solve_previousvaluemask) = 2 * (sto_cp_solve_previousvaluemaskentryproduct) /\ (sto_cn_solve_previousvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_previousvaluemaskentryproductoutput. (((dc_value_solve_previousvaluemask) = 2 * ge_signed_half_solve_previousvaluemaskentryproductoutput + 1 /\ (sto_cp_solve_previousvaluemaskentryproduct) = 0) /\ (sto_cn_solve_previousvaluemaskentryproduct) = S ge_signed_half_solve_previousvaluemaskentryproductoutput))) /\ ((sto_ap_solve_previousvaluemaskentryproduct * sto_bp_solve_previousvaluemaskentryproduct + sto_an_solve_previousvaluemaskentryproduct * sto_bn_solve_previousvaluemaskentryproduct) + sto_cn_solve_previousvaluemaskentryproduct = (sto_ap_solve_previousvaluemaskentryproduct * sto_bn_solve_previousvaluemaskentryproduct + sto_an_solve_previousvaluemaskentryproduct * sto_bp_solve_previousvaluemaskentryproduct) + sto_cp_solve_previousvaluemaskentryproduct))))))))))))))) \/ ((((dc_index_solve_previousvaluemask)=0 \/ ~(exists pvs_factor_solve_previousvaluemaskentrynondivisor. (dc_input_solve_previous) = (dc_index_solve_previousvaluemask) * pvs_factor_solve_previousvaluemaskentrynondivisor)) /\ ((dc_value_solve_previousvaluemask)=0))))))) /\ (exists dst_positive_code_solve_previousvaluefold dst_positive_scale_solve_previousvaluefold dst_negative_code_solve_previousvaluefold dst_negative_scale_solve_previousvaluefold dst_positive_sum_solve_previousvaluefold dst_negative_sum_solve_previousvaluefold. (((dc_mask_solve_previousvalue) = (((((dst_positive_code_solve_previousvaluefold) + (dst_positive_scale_solve_previousvaluefold)) * S ((dst_positive_code_solve_previousvaluefold) + (dst_positive_scale_solve_previousvaluefold)) + ((dst_positive_scale_solve_previousvaluefold) + (dst_positive_scale_solve_previousvaluefold))) + (((dst_negative_code_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)) * S ((dst_negative_code_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)) + ((dst_negative_scale_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)))) * S ((((dst_positive_code_solve_previousvaluefold) + (dst_positive_scale_solve_previousvaluefold)) * S ((dst_positive_code_solve_previousvaluefold) + (dst_positive_scale_solve_previousvaluefold)) + ((dst_positive_scale_solve_previousvaluefold) + (dst_positive_scale_solve_previousvaluefold))) + (((dst_negative_code_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)) * S ((dst_negative_code_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)) + ((dst_negative_scale_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)))) + ((((dst_negative_code_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)) * S ((dst_negative_code_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)) + ((dst_negative_scale_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold))) + (((dst_negative_code_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)) * S ((dst_negative_code_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)) + ((dst_negative_scale_solve_previousvaluefold) + (dst_negative_scale_solve_previousvaluefold)))))) /\ (((exists fs_u_dst_solve_previousvaluefoldpositive fs_v_dst_solve_previousvaluefoldpositive. ((((exists fs_h_dst_solve_previousvaluefoldpositive_body_start. fs_h_dst_solve_previousvaluefoldpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_solve_previousvaluefoldpositive)) /\ exists fs_q_dst_solve_previousvaluefoldpositive_body_start. fs_u_dst_solve_previousvaluefoldpositive = fs_q_dst_solve_previousvaluefoldpositive_body_start * S ((S (0)) * fs_v_dst_solve_previousvaluefoldpositive) + (0))) /\ ((((exists fs_h_dst_solve_previousvaluefoldpositive_body_terminal. fs_h_dst_solve_previousvaluefoldpositive_body_terminal + S (dst_positive_sum_solve_previousvaluefold) = S ((S (S (dc_input_solve_previous))) * fs_v_dst_solve_previousvaluefoldpositive)) /\ exists fs_q_dst_solve_previousvaluefoldpositive_body_terminal. fs_u_dst_solve_previousvaluefoldpositive = fs_q_dst_solve_previousvaluefoldpositive_body_terminal * S ((S (S (dc_input_solve_previous))) * fs_v_dst_solve_previousvaluefoldpositive) + (dst_positive_sum_solve_previousvaluefold))) /\ forall fs_i_dst_solve_previousvaluefoldpositive_body_steps. (exists fs_lt_dst_solve_previousvaluefoldpositive_body_steps_bound. fs_lt_dst_solve_previousvaluefoldpositive_body_steps_bound + S fs_i_dst_solve_previousvaluefoldpositive_body_steps = S (dc_input_solve_previous)) -> exists fs_a_dst_solve_previousvaluefoldpositive_body_steps fs_r_dst_solve_previousvaluefoldpositive_body_steps fs_s_dst_solve_previousvaluefoldpositive_body_steps. ((((exists fs_h_dst_solve_previousvaluefoldpositive_body_steps_summand. fs_h_dst_solve_previousvaluefoldpositive_body_steps_summand + S (fs_a_dst_solve_previousvaluefoldpositive_body_steps) = S ((S (fs_i_dst_solve_previousvaluefoldpositive_body_steps)) * dst_positive_scale_solve_previousvaluefold)) /\ exists fs_q_dst_solve_previousvaluefoldpositive_body_steps_summand. dst_positive_code_solve_previousvaluefold = fs_q_dst_solve_previousvaluefoldpositive_body_steps_summand * S ((S (fs_i_dst_solve_previousvaluefoldpositive_body_steps)) * dst_positive_scale_solve_previousvaluefold) + (fs_a_dst_solve_previousvaluefoldpositive_body_steps))) /\ ((((exists fs_h_dst_solve_previousvaluefoldpositive_body_steps_partial. fs_h_dst_solve_previousvaluefoldpositive_body_steps_partial + S (fs_r_dst_solve_previousvaluefoldpositive_body_steps) = S ((S (fs_i_dst_solve_previousvaluefoldpositive_body_steps)) * fs_v_dst_solve_previousvaluefoldpositive)) /\ exists fs_q_dst_solve_previousvaluefoldpositive_body_steps_partial. fs_u_dst_solve_previousvaluefoldpositive = fs_q_dst_solve_previousvaluefoldpositive_body_steps_partial * S ((S (fs_i_dst_solve_previousvaluefoldpositive_body_steps)) * fs_v_dst_solve_previousvaluefoldpositive) + (fs_r_dst_solve_previousvaluefoldpositive_body_steps))) /\ ((((exists fs_h_dst_solve_previousvaluefoldpositive_body_steps_successor. fs_h_dst_solve_previousvaluefoldpositive_body_steps_successor + S (fs_s_dst_solve_previousvaluefoldpositive_body_steps) = S ((S (S fs_i_dst_solve_previousvaluefoldpositive_body_steps)) * fs_v_dst_solve_previousvaluefoldpositive)) /\ exists fs_q_dst_solve_previousvaluefoldpositive_body_steps_successor. fs_u_dst_solve_previousvaluefoldpositive = fs_q_dst_solve_previousvaluefoldpositive_body_steps_successor * S ((S (S fs_i_dst_solve_previousvaluefoldpositive_body_steps)) * fs_v_dst_solve_previousvaluefoldpositive) + (fs_s_dst_solve_previousvaluefoldpositive_body_steps))) /\ fs_s_dst_solve_previousvaluefoldpositive_body_steps = fs_r_dst_solve_previousvaluefoldpositive_body_steps + fs_a_dst_solve_previousvaluefoldpositive_body_steps)))))) /\ (((exists fs_u_dst_solve_previousvaluefoldnegative fs_v_dst_solve_previousvaluefoldnegative. ((((exists fs_h_dst_solve_previousvaluefoldnegative_body_start. fs_h_dst_solve_previousvaluefoldnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_solve_previousvaluefoldnegative)) /\ exists fs_q_dst_solve_previousvaluefoldnegative_body_start. fs_u_dst_solve_previousvaluefoldnegative = fs_q_dst_solve_previousvaluefoldnegative_body_start * S ((S (0)) * fs_v_dst_solve_previousvaluefoldnegative) + (0))) /\ ((((exists fs_h_dst_solve_previousvaluefoldnegative_body_terminal. fs_h_dst_solve_previousvaluefoldnegative_body_terminal + S (dst_negative_sum_solve_previousvaluefold) = S ((S (S (dc_input_solve_previous))) * fs_v_dst_solve_previousvaluefoldnegative)) /\ exists fs_q_dst_solve_previousvaluefoldnegative_body_terminal. fs_u_dst_solve_previousvaluefoldnegative = fs_q_dst_solve_previousvaluefoldnegative_body_terminal * S ((S (S (dc_input_solve_previous))) * fs_v_dst_solve_previousvaluefoldnegative) + (dst_negative_sum_solve_previousvaluefold))) /\ forall fs_i_dst_solve_previousvaluefoldnegative_body_steps. (exists fs_lt_dst_solve_previousvaluefoldnegative_body_steps_bound. fs_lt_dst_solve_previousvaluefoldnegative_body_steps_bound + S fs_i_dst_solve_previousvaluefoldnegative_body_steps = S (dc_input_solve_previous)) -> exists fs_a_dst_solve_previousvaluefoldnegative_body_steps fs_r_dst_solve_previousvaluefoldnegative_body_steps fs_s_dst_solve_previousvaluefoldnegative_body_steps. ((((exists fs_h_dst_solve_previousvaluefoldnegative_body_steps_summand. fs_h_dst_solve_previousvaluefoldnegative_body_steps_summand + S (fs_a_dst_solve_previousvaluefoldnegative_body_steps) = S ((S (fs_i_dst_solve_previousvaluefoldnegative_body_steps)) * dst_negative_scale_solve_previousvaluefold)) /\ exists fs_q_dst_solve_previousvaluefoldnegative_body_steps_summand. dst_negative_code_solve_previousvaluefold = fs_q_dst_solve_previousvaluefoldnegative_body_steps_summand * S ((S (fs_i_dst_solve_previousvaluefoldnegative_body_steps)) * dst_negative_scale_solve_previousvaluefold) + (fs_a_dst_solve_previousvaluefoldnegative_body_steps))) /\ ((((exists fs_h_dst_solve_previousvaluefoldnegative_body_steps_partial. fs_h_dst_solve_previousvaluefoldnegative_body_steps_partial + S (fs_r_dst_solve_previousvaluefoldnegative_body_steps) = S ((S (fs_i_dst_solve_previousvaluefoldnegative_body_steps)) * fs_v_dst_solve_previousvaluefoldnegative)) /\ exists fs_q_dst_solve_previousvaluefoldnegative_body_steps_partial. fs_u_dst_solve_previousvaluefoldnegative = fs_q_dst_solve_previousvaluefoldnegative_body_steps_partial * S ((S (fs_i_dst_solve_previousvaluefoldnegative_body_steps)) * fs_v_dst_solve_previousvaluefoldnegative) + (fs_r_dst_solve_previousvaluefoldnegative_body_steps))) /\ ((((exists fs_h_dst_solve_previousvaluefoldnegative_body_steps_successor. fs_h_dst_solve_previousvaluefoldnegative_body_steps_successor + S (fs_s_dst_solve_previousvaluefoldnegative_body_steps) = S ((S (S fs_i_dst_solve_previousvaluefoldnegative_body_steps)) * fs_v_dst_solve_previousvaluefoldnegative)) /\ exists fs_q_dst_solve_previousvaluefoldnegative_body_steps_successor. fs_u_dst_solve_previousvaluefoldnegative = fs_q_dst_solve_previousvaluefoldnegative_body_steps_successor * S ((S (S fs_i_dst_solve_previousvaluefoldnegative_body_steps)) * fs_v_dst_solve_previousvaluefoldnegative) + (fs_s_dst_solve_previousvaluefoldnegative_body_steps))) /\ fs_s_dst_solve_previousvaluefoldnegative_body_steps = fs_r_dst_solve_previousvaluefoldnegative_body_steps + fs_a_dst_solve_previousvaluefoldnegative_body_steps)))))) /\ (exists ge_balance_positive_solve_previousvaluefoldresult ge_balance_negative_solve_previousvaluefoldresult. (((((dc_output_solve_previous) = 2 * (ge_balance_positive_solve_previousvaluefoldresult) /\ (ge_balance_negative_solve_previousvaluefoldresult) = 0) \/ exists ge_signed_half_solve_previousvaluefoldresultdecode. (((dc_output_solve_previous) = 2 * ge_signed_half_solve_previousvaluefoldresultdecode + 1 /\ (ge_balance_positive_solve_previousvaluefoldresult) = 0) /\ (ge_balance_negative_solve_previousvaluefoldresult) = S ge_signed_half_solve_previousvaluefoldresultdecode))) /\ ((dst_positive_sum_solve_previousvaluefold) + ge_balance_negative_solve_previousvaluefoldresult = (dst_negative_sum_solve_previousvaluefold) + ge_balance_positive_solve_previousvaluefoldresult)))))))))))))))))))) /\ (exists dst_positive_code_solve_previous_zero dst_positive_scale_solve_previous_zero dst_negative_code_solve_previous_zero dst_negative_scale_solve_previous_zero dst_positive_solve_previous_zero dst_negative_solve_previous_zero. (((G) = (((((dst_positive_code_solve_previous_zero) + (dst_positive_scale_solve_previous_zero)) * S ((dst_positive_code_solve_previous_zero) + (dst_positive_scale_solve_previous_zero)) + ((dst_positive_scale_solve_previous_zero) + (dst_positive_scale_solve_previous_zero))) + (((dst_negative_code_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)) * S ((dst_negative_code_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)) + ((dst_negative_scale_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)))) * S ((((dst_positive_code_solve_previous_zero) + (dst_positive_scale_solve_previous_zero)) * S ((dst_positive_code_solve_previous_zero) + (dst_positive_scale_solve_previous_zero)) + ((dst_positive_scale_solve_previous_zero) + (dst_positive_scale_solve_previous_zero))) + (((dst_negative_code_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)) * S ((dst_negative_code_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)) + ((dst_negative_scale_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)))) + ((((dst_negative_code_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)) * S ((dst_negative_code_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)) + ((dst_negative_scale_solve_previous_zero) + (dst_negative_scale_solve_previous_zero))) + (((dst_negative_code_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)) * S ((dst_negative_code_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)) + ((dst_negative_scale_solve_previous_zero) + (dst_negative_scale_solve_previous_zero)))))) /\ (((((exists ff_h_pvs_solve_previous_zeropositive. ff_h_pvs_solve_previous_zeropositive + S (dst_positive_solve_previous_zero) = S ((S (0)) * dst_positive_scale_solve_previous_zero)) /\ exists ff_q_pvs_solve_previous_zeropositive. dst_positive_code_solve_previous_zero = ff_q_pvs_solve_previous_zeropositive * S ((S (0)) * dst_positive_scale_solve_previous_zero) + (dst_positive_solve_previous_zero))) /\ (((((exists ff_h_pvs_solve_previous_zeronegative. ff_h_pvs_solve_previous_zeronegative + S (dst_negative_solve_previous_zero) = S ((S (0)) * dst_negative_scale_solve_previous_zero)) /\ exists ff_q_pvs_solve_previous_zeronegative. dst_negative_code_solve_previous_zero = ff_q_pvs_solve_previous_zeronegative * S ((S (0)) * dst_negative_scale_solve_previous_zero) + (dst_negative_solve_previous_zero))) /\ (exists ge_balance_positive_solve_previous_zerovalue ge_balance_negative_solve_previous_zerovalue. (((((w) = 2 * (ge_balance_positive_solve_previous_zerovalue) /\ (ge_balance_negative_solve_previous_zerovalue) = 0) \/ exists ge_signed_half_solve_previous_zerovaluedecode. (((w) = 2 * ge_signed_half_solve_previous_zerovaluedecode + 1 /\ (ge_balance_positive_solve_previous_zerovalue) = 0) /\ (ge_balance_negative_solve_previous_zerovalue) = S ge_signed_half_solve_previous_zerovaluedecode))) /\ ((dst_positive_solve_previous_zero) + ge_balance_negative_solve_previous_zerovalue = (dst_negative_solve_previous_zero) + ge_balance_positive_solve_previous_zerovalue))))))))))
  35. 0035specialize IH (F)
  36. 0036specialize IH (T)
  37. 0037specialize IH (u)
  38. 0038specialize IH (w)
  39. 0039apply IH
  40. 0040specialize signed_table_domain_resize (S N)
  41. 0041specialize signed_table_domain_resize (N)
  42. 0042specialize signed_table_domain_resize (F)
  43. 0043apply signed_table_domain_resize
  44. 0044exact hF
  45. 0045specialize signed_table_domain_resize (S N)
  46. 0046specialize signed_table_domain_resize (N)
  47. 0047specialize signed_table_domain_resize (T)
  48. 0048apply signed_table_domain_resize
  49. 0049exact hT
  50. 0050exact hu
  51. 0051exact hunit
  52. 0052cases hp
  53. 0053cases hp_witness
  54. 0054have hx : exists H. ((((exists dst_positive_code_solve_nextleft dst_positive_scale_solve_nextleft dst_negative_code_solve_nextleft dst_negative_scale_solve_nextleft. (((H) = (((((dst_positive_code_solve_nextleft) + (dst_positive_scale_solve_nextleft)) * S ((dst_positive_code_solve_nextleft) + (dst_positive_scale_solve_nextleft)) + ((dst_positive_scale_solve_nextleft) + (dst_positive_scale_solve_nextleft))) + (((dst_negative_code_solve_nextleft) + (dst_negative_scale_solve_nextleft)) * S ((dst_negative_code_solve_nextleft) + (dst_negative_scale_solve_nextleft)) + ((dst_negative_scale_solve_nextleft) + (dst_negative_scale_solve_nextleft)))) * S ((((dst_positive_code_solve_nextleft) + (dst_positive_scale_solve_nextleft)) * S ((dst_positive_code_solve_nextleft) + (dst_positive_scale_solve_nextleft)) + ((dst_positive_scale_solve_nextleft) + (dst_positive_scale_solve_nextleft))) + (((dst_negative_code_solve_nextleft) + (dst_negative_scale_solve_nextleft)) * S ((dst_negative_code_solve_nextleft) + (dst_negative_scale_solve_nextleft)) + ((dst_negative_scale_solve_nextleft) + (dst_negative_scale_solve_nextleft)))) + ((((dst_negative_code_solve_nextleft) + (dst_negative_scale_solve_nextleft)) * S ((dst_negative_code_solve_nextleft) + (dst_negative_scale_solve_nextleft)) + ((dst_negative_scale_solve_nextleft) + (dst_negative_scale_solve_nextleft))) + (((dst_negative_code_solve_nextleft) + (dst_negative_scale_solve_nextleft)) * S ((dst_negative_code_solve_nextleft) + (dst_negative_scale_solve_nextleft)) + ((dst_negative_scale_solve_nextleft) + (dst_negative_scale_solve_nextleft)))))) /\ (forall dst_index_solve_nextleft. (exists pvs_le_gap_solve_nextleftdomain. pvs_le_gap_solve_nextleftdomain + (dst_index_solve_nextleft) = (S N)) -> exists dst_positive_solve_nextleft dst_negative_solve_nextleft dst_value_solve_nextleft. ((((exists ff_h_pvs_solve_nextleftentrypositive. ff_h_pvs_solve_nextleftentrypositive + S (dst_positive_solve_nextleft) = S ((S (dst_index_solve_nextleft)) * dst_positive_scale_solve_nextleft)) /\ exists ff_q_pvs_solve_nextleftentrypositive. dst_positive_code_solve_nextleft = ff_q_pvs_solve_nextleftentrypositive * S ((S (dst_index_solve_nextleft)) * dst_positive_scale_solve_nextleft) + (dst_positive_solve_nextleft))) /\ (((((exists ff_h_pvs_solve_nextleftentrynegative. ff_h_pvs_solve_nextleftentrynegative + S (dst_negative_solve_nextleft) = S ((S (dst_index_solve_nextleft)) * dst_negative_scale_solve_nextleft)) /\ exists ff_q_pvs_solve_nextleftentrynegative. dst_negative_code_solve_nextleft = ff_q_pvs_solve_nextleftentrynegative * S ((S (dst_index_solve_nextleft)) * dst_negative_scale_solve_nextleft) + (dst_negative_solve_nextleft))) /\ (exists ge_balance_positive_solve_nextleftentryvalue ge_balance_negative_solve_nextleftentryvalue. (((((dst_value_solve_nextleft) = 2 * (ge_balance_positive_solve_nextleftentryvalue) /\ (ge_balance_negative_solve_nextleftentryvalue) = 0) \/ exists ge_signed_half_solve_nextleftentryvaluedecode. (((dst_value_solve_nextleft) = 2 * ge_signed_half_solve_nextleftentryvaluedecode + 1 /\ (ge_balance_positive_solve_nextleftentryvalue) = 0) /\ (ge_balance_negative_solve_nextleftentryvalue) = S ge_signed_half_solve_nextleftentryvaluedecode))) /\ ((dst_positive_solve_nextleft) + ge_balance_negative_solve_nextleftentryvalue = (dst_negative_solve_nextleft) + ge_balance_positive_solve_nextleftentryvalue))))))))) /\ (((exists dst_positive_code_solve_nextright dst_positive_scale_solve_nextright dst_negative_code_solve_nextright dst_negative_scale_solve_nextright. (((F) = (((((dst_positive_code_solve_nextright) + (dst_positive_scale_solve_nextright)) * S ((dst_positive_code_solve_nextright) + (dst_positive_scale_solve_nextright)) + ((dst_positive_scale_solve_nextright) + (dst_positive_scale_solve_nextright))) + (((dst_negative_code_solve_nextright) + (dst_negative_scale_solve_nextright)) * S ((dst_negative_code_solve_nextright) + (dst_negative_scale_solve_nextright)) + ((dst_negative_scale_solve_nextright) + (dst_negative_scale_solve_nextright)))) * S ((((dst_positive_code_solve_nextright) + (dst_positive_scale_solve_nextright)) * S ((dst_positive_code_solve_nextright) + (dst_positive_scale_solve_nextright)) + ((dst_positive_scale_solve_nextright) + (dst_positive_scale_solve_nextright))) + (((dst_negative_code_solve_nextright) + (dst_negative_scale_solve_nextright)) * S ((dst_negative_code_solve_nextright) + (dst_negative_scale_solve_nextright)) + ((dst_negative_scale_solve_nextright) + (dst_negative_scale_solve_nextright)))) + ((((dst_negative_code_solve_nextright) + (dst_negative_scale_solve_nextright)) * S ((dst_negative_code_solve_nextright) + (dst_negative_scale_solve_nextright)) + ((dst_negative_scale_solve_nextright) + (dst_negative_scale_solve_nextright))) + (((dst_negative_code_solve_nextright) + (dst_negative_scale_solve_nextright)) * S ((dst_negative_code_solve_nextright) + (dst_negative_scale_solve_nextright)) + ((dst_negative_scale_solve_nextright) + (dst_negative_scale_solve_nextright)))))) /\ (forall dst_index_solve_nextright. (exists pvs_le_gap_solve_nextrightdomain. pvs_le_gap_solve_nextrightdomain + (dst_index_solve_nextright) = (S N)) -> exists dst_positive_solve_nextright dst_negative_solve_nextright dst_value_solve_nextright. ((((exists ff_h_pvs_solve_nextrightentrypositive. ff_h_pvs_solve_nextrightentrypositive + S (dst_positive_solve_nextright) = S ((S (dst_index_solve_nextright)) * dst_positive_scale_solve_nextright)) /\ exists ff_q_pvs_solve_nextrightentrypositive. dst_positive_code_solve_nextright = ff_q_pvs_solve_nextrightentrypositive * S ((S (dst_index_solve_nextright)) * dst_positive_scale_solve_nextright) + (dst_positive_solve_nextright))) /\ (((((exists ff_h_pvs_solve_nextrightentrynegative. ff_h_pvs_solve_nextrightentrynegative + S (dst_negative_solve_nextright) = S ((S (dst_index_solve_nextright)) * dst_negative_scale_solve_nextright)) /\ exists ff_q_pvs_solve_nextrightentrynegative. dst_negative_code_solve_nextright = ff_q_pvs_solve_nextrightentrynegative * S ((S (dst_index_solve_nextright)) * dst_negative_scale_solve_nextright) + (dst_negative_solve_nextright))) /\ (exists ge_balance_positive_solve_nextrightentryvalue ge_balance_negative_solve_nextrightentryvalue. (((((dst_value_solve_nextright) = 2 * (ge_balance_positive_solve_nextrightentryvalue) /\ (ge_balance_negative_solve_nextrightentryvalue) = 0) \/ exists ge_signed_half_solve_nextrightentryvaluedecode. (((dst_value_solve_nextright) = 2 * ge_signed_half_solve_nextrightentryvaluedecode + 1 /\ (ge_balance_positive_solve_nextrightentryvalue) = 0) /\ (ge_balance_negative_solve_nextrightentryvalue) = S ge_signed_half_solve_nextrightentryvaluedecode))) /\ ((dst_positive_solve_nextright) + ge_balance_negative_solve_nextrightentryvalue = (dst_negative_solve_nextright) + ge_balance_positive_solve_nextrightentryvalue))))))))) /\ (((exists dst_positive_code_solve_nexttable dst_positive_scale_solve_nexttable dst_negative_code_solve_nexttable dst_negative_scale_solve_nexttable. (((T) = (((((dst_positive_code_solve_nexttable) + (dst_positive_scale_solve_nexttable)) * S ((dst_positive_code_solve_nexttable) + (dst_positive_scale_solve_nexttable)) + ((dst_positive_scale_solve_nexttable) + (dst_positive_scale_solve_nexttable))) + (((dst_negative_code_solve_nexttable) + (dst_negative_scale_solve_nexttable)) * S ((dst_negative_code_solve_nexttable) + (dst_negative_scale_solve_nexttable)) + ((dst_negative_scale_solve_nexttable) + (dst_negative_scale_solve_nexttable)))) * S ((((dst_positive_code_solve_nexttable) + (dst_positive_scale_solve_nexttable)) * S ((dst_positive_code_solve_nexttable) + (dst_positive_scale_solve_nexttable)) + ((dst_positive_scale_solve_nexttable) + (dst_positive_scale_solve_nexttable))) + (((dst_negative_code_solve_nexttable) + (dst_negative_scale_solve_nexttable)) * S ((dst_negative_code_solve_nexttable) + (dst_negative_scale_solve_nexttable)) + ((dst_negative_scale_solve_nexttable) + (dst_negative_scale_solve_nexttable)))) + ((((dst_negative_code_solve_nexttable) + (dst_negative_scale_solve_nexttable)) * S ((dst_negative_code_solve_nexttable) + (dst_negative_scale_solve_nexttable)) + ((dst_negative_scale_solve_nexttable) + (dst_negative_scale_solve_nexttable))) + (((dst_negative_code_solve_nexttable) + (dst_negative_scale_solve_nexttable)) * S ((dst_negative_code_solve_nexttable) + (dst_negative_scale_solve_nexttable)) + ((dst_negative_scale_solve_nexttable) + (dst_negative_scale_solve_nexttable)))))) /\ (forall dst_index_solve_nexttable. (exists pvs_le_gap_solve_nexttabledomain. pvs_le_gap_solve_nexttabledomain + (dst_index_solve_nexttable) = (S N)) -> exists dst_positive_solve_nexttable dst_negative_solve_nexttable dst_value_solve_nexttable. ((((exists ff_h_pvs_solve_nexttableentrypositive. ff_h_pvs_solve_nexttableentrypositive + S (dst_positive_solve_nexttable) = S ((S (dst_index_solve_nexttable)) * dst_positive_scale_solve_nexttable)) /\ exists ff_q_pvs_solve_nexttableentrypositive. dst_positive_code_solve_nexttable = ff_q_pvs_solve_nexttableentrypositive * S ((S (dst_index_solve_nexttable)) * dst_positive_scale_solve_nexttable) + (dst_positive_solve_nexttable))) /\ (((((exists ff_h_pvs_solve_nexttableentrynegative. ff_h_pvs_solve_nexttableentrynegative + S (dst_negative_solve_nexttable) = S ((S (dst_index_solve_nexttable)) * dst_negative_scale_solve_nexttable)) /\ exists ff_q_pvs_solve_nexttableentrynegative. dst_negative_code_solve_nexttable = ff_q_pvs_solve_nexttableentrynegative * S ((S (dst_index_solve_nexttable)) * dst_negative_scale_solve_nexttable) + (dst_negative_solve_nexttable))) /\ (exists ge_balance_positive_solve_nexttableentryvalue ge_balance_negative_solve_nexttableentryvalue. (((((dst_value_solve_nexttable) = 2 * (ge_balance_positive_solve_nexttableentryvalue) /\ (ge_balance_negative_solve_nexttableentryvalue) = 0) \/ exists ge_signed_half_solve_nexttableentryvaluedecode. (((dst_value_solve_nexttable) = 2 * ge_signed_half_solve_nexttableentryvaluedecode + 1 /\ (ge_balance_positive_solve_nexttableentryvalue) = 0) /\ (ge_balance_negative_solve_nexttableentryvalue) = S ge_signed_half_solve_nexttableentryvaluedecode))) /\ ((dst_positive_solve_nexttable) + ge_balance_negative_solve_nexttableentryvalue = (dst_negative_solve_nexttable) + ge_balance_positive_solve_nexttableentryvalue))))))))) /\ (forall dc_input_solve_next dc_output_solve_next. ~(dc_input_solve_next=0) -> (exists pvs_le_gap_solve_nextdomain. pvs_le_gap_solve_nextdomain + (dc_input_solve_next) = (S N)) -> (exists dst_positive_code_solve_nextlookup dst_positive_scale_solve_nextlookup dst_negative_code_solve_nextlookup dst_negative_scale_solve_nextlookup dst_positive_solve_nextlookup dst_negative_solve_nextlookup. (((T) = (((((dst_positive_code_solve_nextlookup) + (dst_positive_scale_solve_nextlookup)) * S ((dst_positive_code_solve_nextlookup) + (dst_positive_scale_solve_nextlookup)) + ((dst_positive_scale_solve_nextlookup) + (dst_positive_scale_solve_nextlookup))) + (((dst_negative_code_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)) * S ((dst_negative_code_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)) + ((dst_negative_scale_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)))) * S ((((dst_positive_code_solve_nextlookup) + (dst_positive_scale_solve_nextlookup)) * S ((dst_positive_code_solve_nextlookup) + (dst_positive_scale_solve_nextlookup)) + ((dst_positive_scale_solve_nextlookup) + (dst_positive_scale_solve_nextlookup))) + (((dst_negative_code_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)) * S ((dst_negative_code_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)) + ((dst_negative_scale_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)))) + ((((dst_negative_code_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)) * S ((dst_negative_code_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)) + ((dst_negative_scale_solve_nextlookup) + (dst_negative_scale_solve_nextlookup))) + (((dst_negative_code_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)) * S ((dst_negative_code_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)) + ((dst_negative_scale_solve_nextlookup) + (dst_negative_scale_solve_nextlookup)))))) /\ (((((exists ff_h_pvs_solve_nextlookuppositive. ff_h_pvs_solve_nextlookuppositive + S (dst_positive_solve_nextlookup) = S ((S (dc_input_solve_next)) * dst_positive_scale_solve_nextlookup)) /\ exists ff_q_pvs_solve_nextlookuppositive. dst_positive_code_solve_nextlookup = ff_q_pvs_solve_nextlookuppositive * S ((S (dc_input_solve_next)) * dst_positive_scale_solve_nextlookup) + (dst_positive_solve_nextlookup))) /\ (((((exists ff_h_pvs_solve_nextlookupnegative. ff_h_pvs_solve_nextlookupnegative + S (dst_negative_solve_nextlookup) = S ((S (dc_input_solve_next)) * dst_negative_scale_solve_nextlookup)) /\ exists ff_q_pvs_solve_nextlookupnegative. dst_negative_code_solve_nextlookup = ff_q_pvs_solve_nextlookupnegative * S ((S (dc_input_solve_next)) * dst_negative_scale_solve_nextlookup) + (dst_negative_solve_nextlookup))) /\ (exists ge_balance_positive_solve_nextlookupvalue ge_balance_negative_solve_nextlookupvalue. (((((dc_output_solve_next) = 2 * (ge_balance_positive_solve_nextlookupvalue) /\ (ge_balance_negative_solve_nextlookupvalue) = 0) \/ exists ge_signed_half_solve_nextlookupvaluedecode. (((dc_output_solve_next) = 2 * ge_signed_half_solve_nextlookupvaluedecode + 1 /\ (ge_balance_positive_solve_nextlookupvalue) = 0) /\ (ge_balance_negative_solve_nextlookupvalue) = S ge_signed_half_solve_nextlookupvaluedecode))) /\ ((dst_positive_solve_nextlookup) + ge_balance_negative_solve_nextlookupvalue = (dst_negative_solve_nextlookup) + ge_balance_positive_solve_nextlookupvalue))))))))) -> (((~((dc_input_solve_next)=0)) /\ (exists dc_mask_solve_nextvalue. ((((exists dst_positive_code_solve_nextvaluemasktable dst_positive_scale_solve_nextvaluemasktable dst_negative_code_solve_nextvaluemasktable dst_negative_scale_solve_nextvaluemasktable. (((dc_mask_solve_nextvalue) = (((((dst_positive_code_solve_nextvaluemasktable) + (dst_positive_scale_solve_nextvaluemasktable)) * S ((dst_positive_code_solve_nextvaluemasktable) + (dst_positive_scale_solve_nextvaluemasktable)) + ((dst_positive_scale_solve_nextvaluemasktable) + (dst_positive_scale_solve_nextvaluemasktable))) + (((dst_negative_code_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)) * S ((dst_negative_code_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)) + ((dst_negative_scale_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)))) * S ((((dst_positive_code_solve_nextvaluemasktable) + (dst_positive_scale_solve_nextvaluemasktable)) * S ((dst_positive_code_solve_nextvaluemasktable) + (dst_positive_scale_solve_nextvaluemasktable)) + ((dst_positive_scale_solve_nextvaluemasktable) + (dst_positive_scale_solve_nextvaluemasktable))) + (((dst_negative_code_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)) * S ((dst_negative_code_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)) + ((dst_negative_scale_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)))) + ((((dst_negative_code_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)) * S ((dst_negative_code_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)) + ((dst_negative_scale_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable))) + (((dst_negative_code_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)) * S ((dst_negative_code_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)) + ((dst_negative_scale_solve_nextvaluemasktable) + (dst_negative_scale_solve_nextvaluemasktable)))))) /\ (forall dst_index_solve_nextvaluemasktable. (exists pvs_le_gap_solve_nextvaluemasktabledomain. pvs_le_gap_solve_nextvaluemasktabledomain + (dst_index_solve_nextvaluemasktable) = (dc_input_solve_next)) -> exists dst_positive_solve_nextvaluemasktable dst_negative_solve_nextvaluemasktable dst_value_solve_nextvaluemasktable. ((((exists ff_h_pvs_solve_nextvaluemasktableentrypositive. ff_h_pvs_solve_nextvaluemasktableentrypositive + S (dst_positive_solve_nextvaluemasktable) = S ((S (dst_index_solve_nextvaluemasktable)) * dst_positive_scale_solve_nextvaluemasktable)) /\ exists ff_q_pvs_solve_nextvaluemasktableentrypositive. dst_positive_code_solve_nextvaluemasktable = ff_q_pvs_solve_nextvaluemasktableentrypositive * S ((S (dst_index_solve_nextvaluemasktable)) * dst_positive_scale_solve_nextvaluemasktable) + (dst_positive_solve_nextvaluemasktable))) /\ (((((exists ff_h_pvs_solve_nextvaluemasktableentrynegative. ff_h_pvs_solve_nextvaluemasktableentrynegative + S (dst_negative_solve_nextvaluemasktable) = S ((S (dst_index_solve_nextvaluemasktable)) * dst_negative_scale_solve_nextvaluemasktable)) /\ exists ff_q_pvs_solve_nextvaluemasktableentrynegative. dst_negative_code_solve_nextvaluemasktable = ff_q_pvs_solve_nextvaluemasktableentrynegative * S ((S (dst_index_solve_nextvaluemasktable)) * dst_negative_scale_solve_nextvaluemasktable) + (dst_negative_solve_nextvaluemasktable))) /\ (exists ge_balance_positive_solve_nextvaluemasktableentryvalue ge_balance_negative_solve_nextvaluemasktableentryvalue. (((((dst_value_solve_nextvaluemasktable) = 2 * (ge_balance_positive_solve_nextvaluemasktableentryvalue) /\ (ge_balance_negative_solve_nextvaluemasktableentryvalue) = 0) \/ exists ge_signed_half_solve_nextvaluemasktableentryvaluedecode. (((dst_value_solve_nextvaluemasktable) = 2 * ge_signed_half_solve_nextvaluemasktableentryvaluedecode + 1 /\ (ge_balance_positive_solve_nextvaluemasktableentryvalue) = 0) /\ (ge_balance_negative_solve_nextvaluemasktableentryvalue) = S ge_signed_half_solve_nextvaluemasktableentryvaluedecode))) /\ ((dst_positive_solve_nextvaluemasktable) + ge_balance_negative_solve_nextvaluemasktableentryvalue = (dst_negative_solve_nextvaluemasktable) + ge_balance_positive_solve_nextvaluemasktableentryvalue))))))))) /\ (forall dc_index_solve_nextvaluemask dc_value_solve_nextvaluemask. (exists pvs_le_gap_solve_nextvaluemaskdomain. pvs_le_gap_solve_nextvaluemaskdomain + (dc_index_solve_nextvaluemask) = (dc_input_solve_next)) -> (exists dst_positive_code_solve_nextvaluemasklookup dst_positive_scale_solve_nextvaluemasklookup dst_negative_code_solve_nextvaluemasklookup dst_negative_scale_solve_nextvaluemasklookup dst_positive_solve_nextvaluemasklookup dst_negative_solve_nextvaluemasklookup. (((dc_mask_solve_nextvalue) = (((((dst_positive_code_solve_nextvaluemasklookup) + (dst_positive_scale_solve_nextvaluemasklookup)) * S ((dst_positive_code_solve_nextvaluemasklookup) + (dst_positive_scale_solve_nextvaluemasklookup)) + ((dst_positive_scale_solve_nextvaluemasklookup) + (dst_positive_scale_solve_nextvaluemasklookup))) + (((dst_negative_code_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)) * S ((dst_negative_code_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)) + ((dst_negative_scale_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)))) * S ((((dst_positive_code_solve_nextvaluemasklookup) + (dst_positive_scale_solve_nextvaluemasklookup)) * S ((dst_positive_code_solve_nextvaluemasklookup) + (dst_positive_scale_solve_nextvaluemasklookup)) + ((dst_positive_scale_solve_nextvaluemasklookup) + (dst_positive_scale_solve_nextvaluemasklookup))) + (((dst_negative_code_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)) * S ((dst_negative_code_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)) + ((dst_negative_scale_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)))) + ((((dst_negative_code_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)) * S ((dst_negative_code_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)) + ((dst_negative_scale_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup))) + (((dst_negative_code_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)) * S ((dst_negative_code_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)) + ((dst_negative_scale_solve_nextvaluemasklookup) + (dst_negative_scale_solve_nextvaluemasklookup)))))) /\ (((((exists ff_h_pvs_solve_nextvaluemasklookuppositive. ff_h_pvs_solve_nextvaluemasklookuppositive + S (dst_positive_solve_nextvaluemasklookup) = S ((S (dc_index_solve_nextvaluemask)) * dst_positive_scale_solve_nextvaluemasklookup)) /\ exists ff_q_pvs_solve_nextvaluemasklookuppositive. dst_positive_code_solve_nextvaluemasklookup = ff_q_pvs_solve_nextvaluemasklookuppositive * S ((S (dc_index_solve_nextvaluemask)) * dst_positive_scale_solve_nextvaluemasklookup) + (dst_positive_solve_nextvaluemasklookup))) /\ (((((exists ff_h_pvs_solve_nextvaluemasklookupnegative. ff_h_pvs_solve_nextvaluemasklookupnegative + S (dst_negative_solve_nextvaluemasklookup) = S ((S (dc_index_solve_nextvaluemask)) * dst_negative_scale_solve_nextvaluemasklookup)) /\ exists ff_q_pvs_solve_nextvaluemasklookupnegative. dst_negative_code_solve_nextvaluemasklookup = ff_q_pvs_solve_nextvaluemasklookupnegative * S ((S (dc_index_solve_nextvaluemask)) * dst_negative_scale_solve_nextvaluemasklookup) + (dst_negative_solve_nextvaluemasklookup))) /\ (exists ge_balance_positive_solve_nextvaluemasklookupvalue ge_balance_negative_solve_nextvaluemasklookupvalue. (((((dc_value_solve_nextvaluemask) = 2 * (ge_balance_positive_solve_nextvaluemasklookupvalue) /\ (ge_balance_negative_solve_nextvaluemasklookupvalue) = 0) \/ exists ge_signed_half_solve_nextvaluemasklookupvaluedecode. (((dc_value_solve_nextvaluemask) = 2 * ge_signed_half_solve_nextvaluemasklookupvaluedecode + 1 /\ (ge_balance_positive_solve_nextvaluemasklookupvalue) = 0) /\ (ge_balance_negative_solve_nextvaluemasklookupvalue) = S ge_signed_half_solve_nextvaluemasklookupvaluedecode))) /\ ((dst_positive_solve_nextvaluemasklookup) + ge_balance_negative_solve_nextvaluemasklookupvalue = (dst_negative_solve_nextvaluemasklookup) + ge_balance_positive_solve_nextvaluemasklookupvalue))))))))) -> ((((~((dc_index_solve_nextvaluemask)=0)) /\ (exists dc_quotient_solve_nextvaluemaskentry dc_left_solve_nextvaluemaskentry dc_right_solve_nextvaluemaskentry. (((dc_input_solve_next)=(dc_index_solve_nextvaluemask)*dc_quotient_solve_nextvaluemaskentry) /\ (((exists dst_positive_code_solve_nextvaluemaskentryleft dst_positive_scale_solve_nextvaluemaskentryleft dst_negative_code_solve_nextvaluemaskentryleft dst_negative_scale_solve_nextvaluemaskentryleft dst_positive_solve_nextvaluemaskentryleft dst_negative_solve_nextvaluemaskentryleft. (((H) = (((((dst_positive_code_solve_nextvaluemaskentryleft) + (dst_positive_scale_solve_nextvaluemaskentryleft)) * S ((dst_positive_code_solve_nextvaluemaskentryleft) + (dst_positive_scale_solve_nextvaluemaskentryleft)) + ((dst_positive_scale_solve_nextvaluemaskentryleft) + (dst_positive_scale_solve_nextvaluemaskentryleft))) + (((dst_negative_code_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)) * S ((dst_negative_code_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)) + ((dst_negative_scale_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)))) * S ((((dst_positive_code_solve_nextvaluemaskentryleft) + (dst_positive_scale_solve_nextvaluemaskentryleft)) * S ((dst_positive_code_solve_nextvaluemaskentryleft) + (dst_positive_scale_solve_nextvaluemaskentryleft)) + ((dst_positive_scale_solve_nextvaluemaskentryleft) + (dst_positive_scale_solve_nextvaluemaskentryleft))) + (((dst_negative_code_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)) * S ((dst_negative_code_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)) + ((dst_negative_scale_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)))) + ((((dst_negative_code_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)) * S ((dst_negative_code_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)) + ((dst_negative_scale_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft))) + (((dst_negative_code_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)) * S ((dst_negative_code_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)) + ((dst_negative_scale_solve_nextvaluemaskentryleft) + (dst_negative_scale_solve_nextvaluemaskentryleft)))))) /\ (((((exists ff_h_pvs_solve_nextvaluemaskentryleftpositive. ff_h_pvs_solve_nextvaluemaskentryleftpositive + S (dst_positive_solve_nextvaluemaskentryleft) = S ((S (dc_index_solve_nextvaluemask)) * dst_positive_scale_solve_nextvaluemaskentryleft)) /\ exists ff_q_pvs_solve_nextvaluemaskentryleftpositive. dst_positive_code_solve_nextvaluemaskentryleft = ff_q_pvs_solve_nextvaluemaskentryleftpositive * S ((S (dc_index_solve_nextvaluemask)) * dst_positive_scale_solve_nextvaluemaskentryleft) + (dst_positive_solve_nextvaluemaskentryleft))) /\ (((((exists ff_h_pvs_solve_nextvaluemaskentryleftnegative. ff_h_pvs_solve_nextvaluemaskentryleftnegative + S (dst_negative_solve_nextvaluemaskentryleft) = S ((S (dc_index_solve_nextvaluemask)) * dst_negative_scale_solve_nextvaluemaskentryleft)) /\ exists ff_q_pvs_solve_nextvaluemaskentryleftnegative. dst_negative_code_solve_nextvaluemaskentryleft = ff_q_pvs_solve_nextvaluemaskentryleftnegative * S ((S (dc_index_solve_nextvaluemask)) * dst_negative_scale_solve_nextvaluemaskentryleft) + (dst_negative_solve_nextvaluemaskentryleft))) /\ (exists ge_balance_positive_solve_nextvaluemaskentryleftvalue ge_balance_negative_solve_nextvaluemaskentryleftvalue. (((((dc_left_solve_nextvaluemaskentry) = 2 * (ge_balance_positive_solve_nextvaluemaskentryleftvalue) /\ (ge_balance_negative_solve_nextvaluemaskentryleftvalue) = 0) \/ exists ge_signed_half_solve_nextvaluemaskentryleftvaluedecode. (((dc_left_solve_nextvaluemaskentry) = 2 * ge_signed_half_solve_nextvaluemaskentryleftvaluedecode + 1 /\ (ge_balance_positive_solve_nextvaluemaskentryleftvalue) = 0) /\ (ge_balance_negative_solve_nextvaluemaskentryleftvalue) = S ge_signed_half_solve_nextvaluemaskentryleftvaluedecode))) /\ ((dst_positive_solve_nextvaluemaskentryleft) + ge_balance_negative_solve_nextvaluemaskentryleftvalue = (dst_negative_solve_nextvaluemaskentryleft) + ge_balance_positive_solve_nextvaluemaskentryleftvalue))))))))) /\ (((exists dst_positive_code_solve_nextvaluemaskentryright dst_positive_scale_solve_nextvaluemaskentryright dst_negative_code_solve_nextvaluemaskentryright dst_negative_scale_solve_nextvaluemaskentryright dst_positive_solve_nextvaluemaskentryright dst_negative_solve_nextvaluemaskentryright. (((F) = (((((dst_positive_code_solve_nextvaluemaskentryright) + (dst_positive_scale_solve_nextvaluemaskentryright)) * S ((dst_positive_code_solve_nextvaluemaskentryright) + (dst_positive_scale_solve_nextvaluemaskentryright)) + ((dst_positive_scale_solve_nextvaluemaskentryright) + (dst_positive_scale_solve_nextvaluemaskentryright))) + (((dst_negative_code_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)) * S ((dst_negative_code_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)) + ((dst_negative_scale_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)))) * S ((((dst_positive_code_solve_nextvaluemaskentryright) + (dst_positive_scale_solve_nextvaluemaskentryright)) * S ((dst_positive_code_solve_nextvaluemaskentryright) + (dst_positive_scale_solve_nextvaluemaskentryright)) + ((dst_positive_scale_solve_nextvaluemaskentryright) + (dst_positive_scale_solve_nextvaluemaskentryright))) + (((dst_negative_code_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)) * S ((dst_negative_code_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)) + ((dst_negative_scale_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)))) + ((((dst_negative_code_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)) * S ((dst_negative_code_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)) + ((dst_negative_scale_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright))) + (((dst_negative_code_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)) * S ((dst_negative_code_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)) + ((dst_negative_scale_solve_nextvaluemaskentryright) + (dst_negative_scale_solve_nextvaluemaskentryright)))))) /\ (((((exists ff_h_pvs_solve_nextvaluemaskentryrightpositive. ff_h_pvs_solve_nextvaluemaskentryrightpositive + S (dst_positive_solve_nextvaluemaskentryright) = S ((S (dc_quotient_solve_nextvaluemaskentry)) * dst_positive_scale_solve_nextvaluemaskentryright)) /\ exists ff_q_pvs_solve_nextvaluemaskentryrightpositive. dst_positive_code_solve_nextvaluemaskentryright = ff_q_pvs_solve_nextvaluemaskentryrightpositive * S ((S (dc_quotient_solve_nextvaluemaskentry)) * dst_positive_scale_solve_nextvaluemaskentryright) + (dst_positive_solve_nextvaluemaskentryright))) /\ (((((exists ff_h_pvs_solve_nextvaluemaskentryrightnegative. ff_h_pvs_solve_nextvaluemaskentryrightnegative + S (dst_negative_solve_nextvaluemaskentryright) = S ((S (dc_quotient_solve_nextvaluemaskentry)) * dst_negative_scale_solve_nextvaluemaskentryright)) /\ exists ff_q_pvs_solve_nextvaluemaskentryrightnegative. dst_negative_code_solve_nextvaluemaskentryright = ff_q_pvs_solve_nextvaluemaskentryrightnegative * S ((S (dc_quotient_solve_nextvaluemaskentry)) * dst_negative_scale_solve_nextvaluemaskentryright) + (dst_negative_solve_nextvaluemaskentryright))) /\ (exists ge_balance_positive_solve_nextvaluemaskentryrightvalue ge_balance_negative_solve_nextvaluemaskentryrightvalue. (((((dc_right_solve_nextvaluemaskentry) = 2 * (ge_balance_positive_solve_nextvaluemaskentryrightvalue) /\ (ge_balance_negative_solve_nextvaluemaskentryrightvalue) = 0) \/ exists ge_signed_half_solve_nextvaluemaskentryrightvaluedecode. (((dc_right_solve_nextvaluemaskentry) = 2 * ge_signed_half_solve_nextvaluemaskentryrightvaluedecode + 1 /\ (ge_balance_positive_solve_nextvaluemaskentryrightvalue) = 0) /\ (ge_balance_negative_solve_nextvaluemaskentryrightvalue) = S ge_signed_half_solve_nextvaluemaskentryrightvaluedecode))) /\ ((dst_positive_solve_nextvaluemaskentryright) + ge_balance_negative_solve_nextvaluemaskentryrightvalue = (dst_negative_solve_nextvaluemaskentryright) + ge_balance_positive_solve_nextvaluemaskentryrightvalue))))))))) /\ (exists sto_ap_solve_nextvaluemaskentryproduct sto_an_solve_nextvaluemaskentryproduct sto_bp_solve_nextvaluemaskentryproduct sto_bn_solve_nextvaluemaskentryproduct sto_cp_solve_nextvaluemaskentryproduct sto_cn_solve_nextvaluemaskentryproduct. (((((dc_left_solve_nextvaluemaskentry) = 2 * (sto_ap_solve_nextvaluemaskentryproduct) /\ (sto_an_solve_nextvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_nextvaluemaskentryproductleft. (((dc_left_solve_nextvaluemaskentry) = 2 * ge_signed_half_solve_nextvaluemaskentryproductleft + 1 /\ (sto_ap_solve_nextvaluemaskentryproduct) = 0) /\ (sto_an_solve_nextvaluemaskentryproduct) = S ge_signed_half_solve_nextvaluemaskentryproductleft))) /\ ((((((dc_right_solve_nextvaluemaskentry) = 2 * (sto_bp_solve_nextvaluemaskentryproduct) /\ (sto_bn_solve_nextvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_nextvaluemaskentryproductright. (((dc_right_solve_nextvaluemaskentry) = 2 * ge_signed_half_solve_nextvaluemaskentryproductright + 1 /\ (sto_bp_solve_nextvaluemaskentryproduct) = 0) /\ (sto_bn_solve_nextvaluemaskentryproduct) = S ge_signed_half_solve_nextvaluemaskentryproductright))) /\ ((((((dc_value_solve_nextvaluemask) = 2 * (sto_cp_solve_nextvaluemaskentryproduct) /\ (sto_cn_solve_nextvaluemaskentryproduct) = 0) \/ exists ge_signed_half_solve_nextvaluemaskentryproductoutput. (((dc_value_solve_nextvaluemask) = 2 * ge_signed_half_solve_nextvaluemaskentryproductoutput + 1 /\ (sto_cp_solve_nextvaluemaskentryproduct) = 0) /\ (sto_cn_solve_nextvaluemaskentryproduct) = S ge_signed_half_solve_nextvaluemaskentryproductoutput))) /\ ((sto_ap_solve_nextvaluemaskentryproduct * sto_bp_solve_nextvaluemaskentryproduct + sto_an_solve_nextvaluemaskentryproduct * sto_bn_solve_nextvaluemaskentryproduct) + sto_cn_solve_nextvaluemaskentryproduct = (sto_ap_solve_nextvaluemaskentryproduct * sto_bn_solve_nextvaluemaskentryproduct + sto_an_solve_nextvaluemaskentryproduct * sto_bp_solve_nextvaluemaskentryproduct) + sto_cp_solve_nextvaluemaskentryproduct))))))))))))))) \/ ((((dc_index_solve_nextvaluemask)=0 \/ ~(exists pvs_factor_solve_nextvaluemaskentrynondivisor. (dc_input_solve_next) = (dc_index_solve_nextvaluemask) * pvs_factor_solve_nextvaluemaskentrynondivisor)) /\ ((dc_value_solve_nextvaluemask)=0))))))) /\ (exists dst_positive_code_solve_nextvaluefold dst_positive_scale_solve_nextvaluefold dst_negative_code_solve_nextvaluefold dst_negative_scale_solve_nextvaluefold dst_positive_sum_solve_nextvaluefold dst_negative_sum_solve_nextvaluefold. (((dc_mask_solve_nextvalue) = (((((dst_positive_code_solve_nextvaluefold) + (dst_positive_scale_solve_nextvaluefold)) * S ((dst_positive_code_solve_nextvaluefold) + (dst_positive_scale_solve_nextvaluefold)) + ((dst_positive_scale_solve_nextvaluefold) + (dst_positive_scale_solve_nextvaluefold))) + (((dst_negative_code_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)) * S ((dst_negative_code_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)) + ((dst_negative_scale_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)))) * S ((((dst_positive_code_solve_nextvaluefold) + (dst_positive_scale_solve_nextvaluefold)) * S ((dst_positive_code_solve_nextvaluefold) + (dst_positive_scale_solve_nextvaluefold)) + ((dst_positive_scale_solve_nextvaluefold) + (dst_positive_scale_solve_nextvaluefold))) + (((dst_negative_code_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)) * S ((dst_negative_code_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)) + ((dst_negative_scale_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)))) + ((((dst_negative_code_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)) * S ((dst_negative_code_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)) + ((dst_negative_scale_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold))) + (((dst_negative_code_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)) * S ((dst_negative_code_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)) + ((dst_negative_scale_solve_nextvaluefold) + (dst_negative_scale_solve_nextvaluefold)))))) /\ (((exists fs_u_dst_solve_nextvaluefoldpositive fs_v_dst_solve_nextvaluefoldpositive. ((((exists fs_h_dst_solve_nextvaluefoldpositive_body_start. fs_h_dst_solve_nextvaluefoldpositive_body_start + S (0) = S ((S (0)) * fs_v_dst_solve_nextvaluefoldpositive)) /\ exists fs_q_dst_solve_nextvaluefoldpositive_body_start. fs_u_dst_solve_nextvaluefoldpositive = fs_q_dst_solve_nextvaluefoldpositive_body_start * S ((S (0)) * fs_v_dst_solve_nextvaluefoldpositive) + (0))) /\ ((((exists fs_h_dst_solve_nextvaluefoldpositive_body_terminal. fs_h_dst_solve_nextvaluefoldpositive_body_terminal + S (dst_positive_sum_solve_nextvaluefold) = S ((S (S (dc_input_solve_next))) * fs_v_dst_solve_nextvaluefoldpositive)) /\ exists fs_q_dst_solve_nextvaluefoldpositive_body_terminal. fs_u_dst_solve_nextvaluefoldpositive = fs_q_dst_solve_nextvaluefoldpositive_body_terminal * S ((S (S (dc_input_solve_next))) * fs_v_dst_solve_nextvaluefoldpositive) + (dst_positive_sum_solve_nextvaluefold))) /\ forall fs_i_dst_solve_nextvaluefoldpositive_body_steps. (exists fs_lt_dst_solve_nextvaluefoldpositive_body_steps_bound. fs_lt_dst_solve_nextvaluefoldpositive_body_steps_bound + S fs_i_dst_solve_nextvaluefoldpositive_body_steps = S (dc_input_solve_next)) -> exists fs_a_dst_solve_nextvaluefoldpositive_body_steps fs_r_dst_solve_nextvaluefoldpositive_body_steps fs_s_dst_solve_nextvaluefoldpositive_body_steps. ((((exists fs_h_dst_solve_nextvaluefoldpositive_body_steps_summand. fs_h_dst_solve_nextvaluefoldpositive_body_steps_summand + S (fs_a_dst_solve_nextvaluefoldpositive_body_steps) = S ((S (fs_i_dst_solve_nextvaluefoldpositive_body_steps)) * dst_positive_scale_solve_nextvaluefold)) /\ exists fs_q_dst_solve_nextvaluefoldpositive_body_steps_summand. dst_positive_code_solve_nextvaluefold = fs_q_dst_solve_nextvaluefoldpositive_body_steps_summand * S ((S (fs_i_dst_solve_nextvaluefoldpositive_body_steps)) * dst_positive_scale_solve_nextvaluefold) + (fs_a_dst_solve_nextvaluefoldpositive_body_steps))) /\ ((((exists fs_h_dst_solve_nextvaluefoldpositive_body_steps_partial. fs_h_dst_solve_nextvaluefoldpositive_body_steps_partial + S (fs_r_dst_solve_nextvaluefoldpositive_body_steps) = S ((S (fs_i_dst_solve_nextvaluefoldpositive_body_steps)) * fs_v_dst_solve_nextvaluefoldpositive)) /\ exists fs_q_dst_solve_nextvaluefoldpositive_body_steps_partial. fs_u_dst_solve_nextvaluefoldpositive = fs_q_dst_solve_nextvaluefoldpositive_body_steps_partial * S ((S (fs_i_dst_solve_nextvaluefoldpositive_body_steps)) * fs_v_dst_solve_nextvaluefoldpositive) + (fs_r_dst_solve_nextvaluefoldpositive_body_steps))) /\ ((((exists fs_h_dst_solve_nextvaluefoldpositive_body_steps_successor. fs_h_dst_solve_nextvaluefoldpositive_body_steps_successor + S (fs_s_dst_solve_nextvaluefoldpositive_body_steps) = S ((S (S fs_i_dst_solve_nextvaluefoldpositive_body_steps)) * fs_v_dst_solve_nextvaluefoldpositive)) /\ exists fs_q_dst_solve_nextvaluefoldpositive_body_steps_successor. fs_u_dst_solve_nextvaluefoldpositive = fs_q_dst_solve_nextvaluefoldpositive_body_steps_successor * S ((S (S fs_i_dst_solve_nextvaluefoldpositive_body_steps)) * fs_v_dst_solve_nextvaluefoldpositive) + (fs_s_dst_solve_nextvaluefoldpositive_body_steps))) /\ fs_s_dst_solve_nextvaluefoldpositive_body_steps = fs_r_dst_solve_nextvaluefoldpositive_body_steps + fs_a_dst_solve_nextvaluefoldpositive_body_steps)))))) /\ (((exists fs_u_dst_solve_nextvaluefoldnegative fs_v_dst_solve_nextvaluefoldnegative. ((((exists fs_h_dst_solve_nextvaluefoldnegative_body_start. fs_h_dst_solve_nextvaluefoldnegative_body_start + S (0) = S ((S (0)) * fs_v_dst_solve_nextvaluefoldnegative)) /\ exists fs_q_dst_solve_nextvaluefoldnegative_body_start. fs_u_dst_solve_nextvaluefoldnegative = fs_q_dst_solve_nextvaluefoldnegative_body_start * S ((S (0)) * fs_v_dst_solve_nextvaluefoldnegative) + (0))) /\ ((((exists fs_h_dst_solve_nextvaluefoldnegative_body_terminal. fs_h_dst_solve_nextvaluefoldnegative_body_terminal + S (dst_negative_sum_solve_nextvaluefold) = S ((S (S (dc_input_solve_next))) * fs_v_dst_solve_nextvaluefoldnegative)) /\ exists fs_q_dst_solve_nextvaluefoldnegative_body_terminal. fs_u_dst_solve_nextvaluefoldnegative = fs_q_dst_solve_nextvaluefoldnegative_body_terminal * S ((S (S (dc_input_solve_next))) * fs_v_dst_solve_nextvaluefoldnegative) + (dst_negative_sum_solve_nextvaluefold))) /\ forall fs_i_dst_solve_nextvaluefoldnegative_body_steps. (exists fs_lt_dst_solve_nextvaluefoldnegative_body_steps_bound. fs_lt_dst_solve_nextvaluefoldnegative_body_steps_bound + S fs_i_dst_solve_nextvaluefoldnegative_body_steps = S (dc_input_solve_next)) -> exists fs_a_dst_solve_nextvaluefoldnegative_body_steps fs_r_dst_solve_nextvaluefoldnegative_body_steps fs_s_dst_solve_nextvaluefoldnegative_body_steps. ((((exists fs_h_dst_solve_nextvaluefoldnegative_body_steps_summand. fs_h_dst_solve_nextvaluefoldnegative_body_steps_summand + S (fs_a_dst_solve_nextvaluefoldnegative_body_steps) = S ((S (fs_i_dst_solve_nextvaluefoldnegative_body_steps)) * dst_negative_scale_solve_nextvaluefold)) /\ exists fs_q_dst_solve_nextvaluefoldnegative_body_steps_summand. dst_negative_code_solve_nextvaluefold = fs_q_dst_solve_nextvaluefoldnegative_body_steps_summand * S ((S (fs_i_dst_solve_nextvaluefoldnegative_body_steps)) * dst_negative_scale_solve_nextvaluefold) + (fs_a_dst_solve_nextvaluefoldnegative_body_steps))) /\ ((((exists fs_h_dst_solve_nextvaluefoldnegative_body_steps_partial. fs_h_dst_solve_nextvaluefoldnegative_body_steps_partial + S (fs_r_dst_solve_nextvaluefoldnegative_body_steps) = S ((S (fs_i_dst_solve_nextvaluefoldnegative_body_steps)) * fs_v_dst_solve_nextvaluefoldnegative)) /\ exists fs_q_dst_solve_nextvaluefoldnegative_body_steps_partial. fs_u_dst_solve_nextvaluefoldnegative = fs_q_dst_solve_nextvaluefoldnegative_body_steps_partial * S ((S (fs_i_dst_solve_nextvaluefoldnegative_body_steps)) * fs_v_dst_solve_nextvaluefoldnegative) + (fs_r_dst_solve_nextvaluefoldnegative_body_steps))) /\ ((((exists fs_h_dst_solve_nextvaluefoldnegative_body_steps_successor. fs_h_dst_solve_nextvaluefoldnegative_body_steps_successor + S (fs_s_dst_solve_nextvaluefoldnegative_body_steps) = S ((S (S fs_i_dst_solve_nextvaluefoldnegative_body_steps)) * fs_v_dst_solve_nextvaluefoldnegative)) /\ exists fs_q_dst_solve_nextvaluefoldnegative_body_steps_successor. fs_u_dst_solve_nextvaluefoldnegative = fs_q_dst_solve_nextvaluefoldnegative_body_steps_successor * S ((S (S fs_i_dst_solve_nextvaluefoldnegative_body_steps)) * fs_v_dst_solve_nextvaluefoldnegative) + (fs_s_dst_solve_nextvaluefoldnegative_body_steps))) /\ fs_s_dst_solve_nextvaluefoldnegative_body_steps = fs_r_dst_solve_nextvaluefoldnegative_body_steps + fs_a_dst_solve_nextvaluefoldnegative_body_steps)))))) /\ (exists ge_balance_positive_solve_nextvaluefoldresult ge_balance_negative_solve_nextvaluefoldresult. (((((dc_output_solve_next) = 2 * (ge_balance_positive_solve_nextvaluefoldresult) /\ (ge_balance_negative_solve_nextvaluefoldresult) = 0) \/ exists ge_signed_half_solve_nextvaluefoldresultdecode. (((dc_output_solve_next) = 2 * ge_signed_half_solve_nextvaluefoldresultdecode + 1 /\ (ge_balance_positive_solve_nextvaluefoldresult) = 0) /\ (ge_balance_negative_solve_nextvaluefoldresult) = S ge_signed_half_solve_nextvaluefoldresultdecode))) /\ ((dst_positive_sum_solve_nextvaluefold) + ge_balance_negative_solve_nextvaluefoldresult = (dst_negative_sum_solve_nextvaluefold) + ge_balance_positive_solve_nextvaluefoldresult)))))))))))))))))))) /\ (forall dst_index_solve_next_preserved dst_first_solve_next_preserved dst_second_solve_next_preserved. (exists pvs_gap_solve_next_preservedbound. pvs_gap_solve_next_preservedbound + S (dst_index_solve_next_preserved) = (S N)) -> (exists dst_positive_code_solve_next_preservedfirst dst_positive_scale_solve_next_preservedfirst dst_negative_code_solve_next_preservedfirst dst_negative_scale_solve_next_preservedfirst dst_positive_solve_next_preservedfirst dst_negative_solve_next_preservedfirst. (((x) = (((((dst_positive_code_solve_next_preservedfirst) + (dst_positive_scale_solve_next_preservedfirst)) * S ((dst_positive_code_solve_next_preservedfirst) + (dst_positive_scale_solve_next_preservedfirst)) + ((dst_positive_scale_solve_next_preservedfirst) + (dst_positive_scale_solve_next_preservedfirst))) + (((dst_negative_code_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)) * S ((dst_negative_code_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)) + ((dst_negative_scale_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)))) * S ((((dst_positive_code_solve_next_preservedfirst) + (dst_positive_scale_solve_next_preservedfirst)) * S ((dst_positive_code_solve_next_preservedfirst) + (dst_positive_scale_solve_next_preservedfirst)) + ((dst_positive_scale_solve_next_preservedfirst) + (dst_positive_scale_solve_next_preservedfirst))) + (((dst_negative_code_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)) * S ((dst_negative_code_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)) + ((dst_negative_scale_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)))) + ((((dst_negative_code_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)) * S ((dst_negative_code_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)) + ((dst_negative_scale_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst))) + (((dst_negative_code_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)) * S ((dst_negative_code_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)) + ((dst_negative_scale_solve_next_preservedfirst) + (dst_negative_scale_solve_next_preservedfirst)))))) /\ (((((exists ff_h_pvs_solve_next_preservedfirstpositive. ff_h_pvs_solve_next_preservedfirstpositive + S (dst_positive_solve_next_preservedfirst) = S ((S (dst_index_solve_next_preserved)) * dst_positive_scale_solve_next_preservedfirst)) /\ exists ff_q_pvs_solve_next_preservedfirstpositive. dst_positive_code_solve_next_preservedfirst = ff_q_pvs_solve_next_preservedfirstpositive * S ((S (dst_index_solve_next_preserved)) * dst_positive_scale_solve_next_preservedfirst) + (dst_positive_solve_next_preservedfirst))) /\ (((((exists ff_h_pvs_solve_next_preservedfirstnegative. ff_h_pvs_solve_next_preservedfirstnegative + S (dst_negative_solve_next_preservedfirst) = S ((S (dst_index_solve_next_preserved)) * dst_negative_scale_solve_next_preservedfirst)) /\ exists ff_q_pvs_solve_next_preservedfirstnegative. dst_negative_code_solve_next_preservedfirst = ff_q_pvs_solve_next_preservedfirstnegative * S ((S (dst_index_solve_next_preserved)) * dst_negative_scale_solve_next_preservedfirst) + (dst_negative_solve_next_preservedfirst))) /\ (exists ge_balance_positive_solve_next_preservedfirstvalue ge_balance_negative_solve_next_preservedfirstvalue. (((((dst_first_solve_next_preserved) = 2 * (ge_balance_positive_solve_next_preservedfirstvalue) /\ (ge_balance_negative_solve_next_preservedfirstvalue) = 0) \/ exists ge_signed_half_solve_next_preservedfirstvaluedecode. (((dst_first_solve_next_preserved) = 2 * ge_signed_half_solve_next_preservedfirstvaluedecode + 1 /\ (ge_balance_positive_solve_next_preservedfirstvalue) = 0) /\ (ge_balance_negative_solve_next_preservedfirstvalue) = S ge_signed_half_solve_next_preservedfirstvaluedecode))) /\ ((dst_positive_solve_next_preservedfirst) + ge_balance_negative_solve_next_preservedfirstvalue = (dst_negative_solve_next_preservedfirst) + ge_balance_positive_solve_next_preservedfirstvalue))))))))) -> (exists dst_positive_code_solve_next_preservedsecond dst_positive_scale_solve_next_preservedsecond dst_negative_code_solve_next_preservedsecond dst_negative_scale_solve_next_preservedsecond dst_positive_solve_next_preservedsecond dst_negative_solve_next_preservedsecond. (((H) = (((((dst_positive_code_solve_next_preservedsecond) + (dst_positive_scale_solve_next_preservedsecond)) * S ((dst_positive_code_solve_next_preservedsecond) + (dst_positive_scale_solve_next_preservedsecond)) + ((dst_positive_scale_solve_next_preservedsecond) + (dst_positive_scale_solve_next_preservedsecond))) + (((dst_negative_code_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)) * S ((dst_negative_code_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)) + ((dst_negative_scale_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)))) * S ((((dst_positive_code_solve_next_preservedsecond) + (dst_positive_scale_solve_next_preservedsecond)) * S ((dst_positive_code_solve_next_preservedsecond) + (dst_positive_scale_solve_next_preservedsecond)) + ((dst_positive_scale_solve_next_preservedsecond) + (dst_positive_scale_solve_next_preservedsecond))) + (((dst_negative_code_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)) * S ((dst_negative_code_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)) + ((dst_negative_scale_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)))) + ((((dst_negative_code_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)) * S ((dst_negative_code_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)) + ((dst_negative_scale_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond))) + (((dst_negative_code_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)) * S ((dst_negative_code_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)) + ((dst_negative_scale_solve_next_preservedsecond) + (dst_negative_scale_solve_next_preservedsecond)))))) /\ (((((exists ff_h_pvs_solve_next_preservedsecondpositive. ff_h_pvs_solve_next_preservedsecondpositive + S (dst_positive_solve_next_preservedsecond) = S ((S (dst_index_solve_next_preserved)) * dst_positive_scale_solve_next_preservedsecond)) /\ exists ff_q_pvs_solve_next_preservedsecondpositive. dst_positive_code_solve_next_preservedsecond = ff_q_pvs_solve_next_preservedsecondpositive * S ((S (dst_index_solve_next_preserved)) * dst_positive_scale_solve_next_preservedsecond) + (dst_positive_solve_next_preservedsecond))) /\ (((((exists ff_h_pvs_solve_next_preservedsecondnegative. ff_h_pvs_solve_next_preservedsecondnegative + S (dst_negative_solve_next_preservedsecond) = S ((S (dst_index_solve_next_preserved)) * dst_negative_scale_solve_next_preservedsecond)) /\ exists ff_q_pvs_solve_next_preservedsecondnegative. dst_negative_code_solve_next_preservedsecond = ff_q_pvs_solve_next_preservedsecondnegative * S ((S (dst_index_solve_next_preserved)) * dst_negative_scale_solve_next_preservedsecond) + (dst_negative_solve_next_preservedsecond))) /\ (exists ge_balance_positive_solve_next_preservedsecondvalue ge_balance_negative_solve_next_preservedsecondvalue. (((((dst_second_solve_next_preserved) = 2 * (ge_balance_positive_solve_next_preservedsecondvalue) /\ (ge_balance_negative_solve_next_preservedsecondvalue) = 0) \/ exists ge_signed_half_solve_next_preservedsecondvaluedecode. (((dst_second_solve_next_preserved) = 2 * ge_signed_half_solve_next_preservedsecondvaluedecode + 1 /\ (ge_balance_positive_solve_next_preservedsecondvalue) = 0) /\ (ge_balance_negative_solve_next_preservedsecondvalue) = S ge_signed_half_solve_next_preservedsecondvaluedecode))) /\ ((dst_positive_solve_next_preservedsecond) + ge_balance_negative_solve_next_preservedsecondvalue = (dst_negative_solve_next_preservedsecond) + ge_balance_positive_solve_next_preservedsecondvalue))))))))) -> dst_first_solve_next_preserved = dst_second_solve_next_preserved))
  55. 0055specialize dirichlet_unit_equation_append (N)
  56. 0056specialize dirichlet_unit_equation_append (F)
  57. 0057specialize dirichlet_unit_equation_append (T)
  58. 0058specialize dirichlet_unit_equation_append (x)
  59. 0059specialize dirichlet_unit_equation_append (u)
  60. 0060apply dirichlet_unit_equation_append
  61. 0061exact hF
  62. 0062exact hT
  63. 0063exact hu
  64. 0064exact hunit
  65. 0065exact hp_witness_left
  66. 0066cases hx
  67. 0067cases hx_witness
  68. 0068exists x1
  69. 0069split
  70. 0070exact hx_witness_left
  71. 0071cases hx_witness_left
  72. 0072specialize arithmetic_signed_table_equal_entry_transport (S N)
  73. 0073specialize arithmetic_signed_table_equal_entry_transport (x)
  74. 0074specialize arithmetic_signed_table_equal_entry_transport (x1)
  75. 0075specialize arithmetic_signed_table_equal_entry_transport (S N)
  76. 0076specialize arithmetic_signed_table_equal_entry_transport (0)
  77. 0077specialize arithmetic_signed_table_equal_entry_transport (w)
  78. 0078apply arithmetic_signed_table_equal_entry_transport
  79. 0079exact hx_witness_left_left
  80. 0080exact hx_witness_right
  81. 0081specialize zero_le (S N)
  82. 0082apply zero_le
  83. 0083specialize succ_le_succ (0)
  84. 0084specialize succ_le_succ (N)
  85. 0085apply succ_le_succ
  86. 0086specialize zero_le (N)
  87. 0087apply zero_le
  88. 0088exact hp_witness_right