Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
For an actual table an inverse exists exactly when N=0 or F(1) is signed +1 or -1. At a positive window this is the unit-at-one criterion; the empty window imposes no condition at one. Every inverse has actual delta and two-sided convolution witnesses. Its zeroth value is arbitrary, so uniqueness is positive-value equality, not equality of codes or of zeroth values. Multiplicative-function closure and full finite signed G009 are admitted in the separate Alpha-v32 multiplicative-convolution family.
Exact theorem in conservative defined notation
∀ N. ∀ F. ∀ T. ∀ u. ∀ w. ArithTable(N,F) → ArithTable(N,T) → ArithAt(F,1,u) → SignedUnit(u) → ∃ x. DirichletTable(N,x,F,T) ∧ ArithAt(x,0,w)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Original expanded first-order 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))))))))))Complete tactic proof in conservative notation
All 88 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.
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.
Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.
Named ingredients (1)
01Fix variables and assumptionsL1–1
Work with arbitrary variables or the premises of the current implication.
- L1
intro N
02Induction on NL2–10
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.
- L11
have hg : ∃ G. ArithTable(0,G) ∧ ArithAt(G,0,w)Definitions: ArithTable(0,G)ArithAt(G,0,w)Original native command in the exact edition - L12
specialize arithmetic_signed_table_singleton (w) - L13
apply arithmetic_signed_table_singleton
04Separate the logical casesL14–15
05Construct an explicit witnessL16–16
Supply the displayed value, then prove that it has the required property.
- L16
exists x
06Separate the logical casesL17–17
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L17
split
07Use earlier factsL18–25
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L18
specialize dirichlet_convolution_table_zero_constructor (x) - L19
specialize dirichlet_convolution_table_zero_constructor (F) - L20
specialize dirichlet_convolution_table_zero_constructor (T) - L21
apply dirichlet_convolution_table_zero_constructor - L22
exact hg_witness_left - L23
exact hF - L24
exact hT - L25
exact hg_witness_right
08Fix variables and assumptionsL26–33
09Establish hpL34–43
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply IH.
- L34
have hp : ∃ G. DirichletTable(N,G,F,T) ∧ ArithAt(G,0,w)Definitions: DirichletTable(N,G,F,T)ArithAt(G,0,w)Original native command in the exact edition - L35
specialize IH (F) - L36
specialize IH (T) - L37
specialize IH (u) - L38
specialize IH (w) - L39
apply IH - L40
specialize signed_table_domain_resize (S N) - L41
specialize signed_table_domain_resize (N) - L42
specialize signed_table_domain_resize (F) - L43
apply signed_table_domain_resize
10Use earlier factsL44–51
11Separate the logical casesL52–53
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.
- L54
have hx : ∃ H. DirichletTable(S N,H,F,T) ∧ ArithTableEqual(x,H,S N)Definitions: DirichletTable(S N,H,F,T)ArithTableEqual(x,H,S N)Original native command in the exact edition - L55
specialize dirichlet_unit_equation_append (N) - L56
specialize dirichlet_unit_equation_append (F) - L57
specialize dirichlet_unit_equation_append (T) - L58
specialize dirichlet_unit_equation_append (x) - L59
specialize dirichlet_unit_equation_append (u) - L60
apply dirichlet_unit_equation_append - L61
exact hF - L62
exact hT - L63
exact hu
13Use earlier factsL64–65
14Separate the logical casesL66–67
15Construct an explicit witnessL68–68
Supply the displayed value, then prove that it has the required property.
- L68
exists x1
16Separate the logical casesL69–69
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L69
split
17Use earlier factsL70–70
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L70
exact hx_witness_left
18Separate the logical casesL71–71
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L71
cases hx_witness_left
19Use earlier factsL72–81
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L72
specialize arithmetic_signed_table_equal_entry_transport (S N) - L73
specialize arithmetic_signed_table_equal_entry_transport (x) - L74
specialize arithmetic_signed_table_equal_entry_transport (x1) - L75
specialize arithmetic_signed_table_equal_entry_transport (S N) - L76
specialize arithmetic_signed_table_equal_entry_transport (0) - L77
specialize arithmetic_signed_table_equal_entry_transport (w) - L78
apply arithmetic_signed_table_equal_entry_transport - L79
exact hx_witness_left_left - L80
exact hx_witness_right - L81
specialize zero_le (S N)
Original defined command ledger · 88 lines
- 0001
intro N - 0002
induction N - 0003
intro F - 0004
intro T - 0005
intro u - 0006
intro w - 0007
intro hF - 0008
intro hT - 0009
intro hu - 0010
intro hunit - 0011
have hg : ∃ G. ArithTable(0,G) ∧ ArithAt(G,0,w) - 0012
specialize arithmetic_signed_table_singleton (w) - 0013
apply arithmetic_signed_table_singleton - 0014
cases hg - 0015
cases hg_witness - 0016
exists x - 0017
split - 0018
specialize dirichlet_convolution_table_zero_constructor (x) - 0019
specialize dirichlet_convolution_table_zero_constructor (F) - 0020
specialize dirichlet_convolution_table_zero_constructor (T) - 0021
apply dirichlet_convolution_table_zero_constructor - 0022
exact hg_witness_left - 0023
exact hF - 0024
exact hT - 0025
exact hg_witness_right - 0026
intro F - 0027
intro T - 0028
intro u - 0029
intro w - 0030
intro hF - 0031
intro hT - 0032
intro hu - 0033
intro hunit - 0034
have hp : ∃ G. DirichletTable(N,G,F,T) ∧ ArithAt(G,0,w) - 0035
specialize IH (F) - 0036
specialize IH (T) - 0037
specialize IH (u) - 0038
specialize IH (w) - 0039
apply IH - 0040
specialize signed_table_domain_resize (S N) - 0041
specialize signed_table_domain_resize (N) - 0042
specialize signed_table_domain_resize (F) - 0043
apply signed_table_domain_resize - 0044
exact hF - 0045
specialize signed_table_domain_resize (S N) - 0046
specialize signed_table_domain_resize (N) - 0047
specialize signed_table_domain_resize (T) - 0048
apply signed_table_domain_resize - 0049
exact hT - 0050
exact hu - 0051
exact hunit - 0052
cases hp - 0053
cases hp_witness - 0054
have hx : ∃ H. DirichletTable(S N,H,F,T) ∧ ArithTableEqual(x,H,S N) - 0055
specialize dirichlet_unit_equation_append (N) - 0056
specialize dirichlet_unit_equation_append (F) - 0057
specialize dirichlet_unit_equation_append (T) - 0058
specialize dirichlet_unit_equation_append (x) - 0059
specialize dirichlet_unit_equation_append (u) - 0060
apply dirichlet_unit_equation_append - 0061
exact hF - 0062
exact hT - 0063
exact hu - 0064
exact hunit - 0065
exact hp_witness_left - 0066
cases hx - 0067
cases hx_witness - 0068
exists x1 - 0069
split - 0070
exact hx_witness_left - 0071
cases hx_witness_left - 0072
specialize arithmetic_signed_table_equal_entry_transport (S N) - 0073
specialize arithmetic_signed_table_equal_entry_transport (x) - 0074
specialize arithmetic_signed_table_equal_entry_transport (x1) - 0075
specialize arithmetic_signed_table_equal_entry_transport (S N) - 0076
specialize arithmetic_signed_table_equal_entry_transport (0) - 0077
specialize arithmetic_signed_table_equal_entry_transport (w) - 0078
apply arithmetic_signed_table_equal_entry_transport - 0079
exact hx_witness_left_left - 0080
exact hx_witness_right - 0081
specialize zero_le (S N) - 0082
apply zero_le - 0083
specialize succ_le_succ (0) - 0084
specialize succ_le_succ (N) - 0085
apply succ_le_succ - 0086
specialize zero_le (N) - 0087
apply zero_le - 0088
exact hp_witness_right