MX004F

dirichlet_multiplicative_pair_factorization

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

On a genuine coprime divisor pair, construct positive cofactors and six signed lookups, apply both bounded multiplicative laws, and factor the actual target summand.

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 G m n d e left right total. (((~((N)=0)) /\ (((exists dst_positive_code_factor_Ftable dst_positive_scale_factor_Ftable dst_negative_code_factor_Ftable dst_negative_scale_factor_Ftable. (((F) = (((((dst_positive_code_factor_Ftable) + (dst_positive_scale_factor_Ftable)) * S ((dst_positive_code_factor_Ftable) + (dst_positive_scale_factor_Ftable)) + ((dst_positive_scale_factor_Ftable) + (dst_positive_scale_factor_Ftable))) + (((dst_negative_code_factor_Ftable) + (dst_negative_scale_factor_Ftable)) * S ((dst_negative_code_factor_Ftable) + (dst_negative_scale_factor_Ftable)) + ((dst_negative_scale_factor_Ftable) + (dst_negative_scale_factor_Ftable)))) * S ((((dst_positive_code_factor_Ftable) + (dst_positive_scale_factor_Ftable)) * S ((dst_positive_code_factor_Ftable) + (dst_positive_scale_factor_Ftable)) + ((dst_positive_scale_factor_Ftable) + (dst_positive_scale_factor_Ftable))) + (((dst_negative_code_factor_Ftable) + (dst_negative_scale_factor_Ftable)) * S ((dst_negative_code_factor_Ftable) + (dst_negative_scale_factor_Ftable)) + ((dst_negative_scale_factor_Ftable) + (dst_negative_scale_factor_Ftable)))) + ((((dst_negative_code_factor_Ftable) + (dst_negative_scale_factor_Ftable)) * S ((dst_negative_code_factor_Ftable) + (dst_negative_scale_factor_Ftable)) + ((dst_negative_scale_factor_Ftable) + (dst_negative_scale_factor_Ftable))) + (((dst_negative_code_factor_Ftable) + (dst_negative_scale_factor_Ftable)) * S ((dst_negative_code_factor_Ftable) + (dst_negative_scale_factor_Ftable)) + ((dst_negative_scale_factor_Ftable) + (dst_negative_scale_factor_Ftable)))))) /\ (forall dst_index_factor_Ftable. (exists pvs_le_gap_factor_Ftabledomain. pvs_le_gap_factor_Ftabledomain + (dst_index_factor_Ftable) = (N)) -> exists dst_positive_factor_Ftable dst_negative_factor_Ftable dst_value_factor_Ftable. ((((exists ff_h_pvs_factor_Ftableentrypositive. ff_h_pvs_factor_Ftableentrypositive + S (dst_positive_factor_Ftable) = S ((S (dst_index_factor_Ftable)) * dst_positive_scale_factor_Ftable)) /\ exists ff_q_pvs_factor_Ftableentrypositive. dst_positive_code_factor_Ftable = ff_q_pvs_factor_Ftableentrypositive * S ((S (dst_index_factor_Ftable)) * dst_positive_scale_factor_Ftable) + (dst_positive_factor_Ftable))) /\ (((((exists ff_h_pvs_factor_Ftableentrynegative. ff_h_pvs_factor_Ftableentrynegative + S (dst_negative_factor_Ftable) = S ((S (dst_index_factor_Ftable)) * dst_negative_scale_factor_Ftable)) /\ exists ff_q_pvs_factor_Ftableentrynegative. dst_negative_code_factor_Ftable = ff_q_pvs_factor_Ftableentrynegative * S ((S (dst_index_factor_Ftable)) * dst_negative_scale_factor_Ftable) + (dst_negative_factor_Ftable))) /\ (exists ge_balance_positive_factor_Ftableentryvalue ge_balance_negative_factor_Ftableentryvalue. (((((dst_value_factor_Ftable) = 2 * (ge_balance_positive_factor_Ftableentryvalue) /\ (ge_balance_negative_factor_Ftableentryvalue) = 0) \/ exists ge_signed_half_factor_Ftableentryvaluedecode. (((dst_value_factor_Ftable) = 2 * ge_signed_half_factor_Ftableentryvaluedecode + 1 /\ (ge_balance_positive_factor_Ftableentryvalue) = 0) /\ (ge_balance_negative_factor_Ftableentryvalue) = S ge_signed_half_factor_Ftableentryvaluedecode))) /\ ((dst_positive_factor_Ftable) + ge_balance_negative_factor_Ftableentryvalue = (dst_negative_factor_Ftable) + ge_balance_positive_factor_Ftableentryvalue))))))))) /\ (((exists dst_positive_code_factor_Fone dst_positive_scale_factor_Fone dst_negative_code_factor_Fone dst_negative_scale_factor_Fone dst_positive_factor_Fone dst_negative_factor_Fone. (((F) = (((((dst_positive_code_factor_Fone) + (dst_positive_scale_factor_Fone)) * S ((dst_positive_code_factor_Fone) + (dst_positive_scale_factor_Fone)) + ((dst_positive_scale_factor_Fone) + (dst_positive_scale_factor_Fone))) + (((dst_negative_code_factor_Fone) + (dst_negative_scale_factor_Fone)) * S ((dst_negative_code_factor_Fone) + (dst_negative_scale_factor_Fone)) + ((dst_negative_scale_factor_Fone) + (dst_negative_scale_factor_Fone)))) * S ((((dst_positive_code_factor_Fone) + (dst_positive_scale_factor_Fone)) * S ((dst_positive_code_factor_Fone) + (dst_positive_scale_factor_Fone)) + ((dst_positive_scale_factor_Fone) + (dst_positive_scale_factor_Fone))) + (((dst_negative_code_factor_Fone) + (dst_negative_scale_factor_Fone)) * S ((dst_negative_code_factor_Fone) + (dst_negative_scale_factor_Fone)) + ((dst_negative_scale_factor_Fone) + (dst_negative_scale_factor_Fone)))) + ((((dst_negative_code_factor_Fone) + (dst_negative_scale_factor_Fone)) * S ((dst_negative_code_factor_Fone) + (dst_negative_scale_factor_Fone)) + ((dst_negative_scale_factor_Fone) + (dst_negative_scale_factor_Fone))) + (((dst_negative_code_factor_Fone) + (dst_negative_scale_factor_Fone)) * S ((dst_negative_code_factor_Fone) + (dst_negative_scale_factor_Fone)) + ((dst_negative_scale_factor_Fone) + (dst_negative_scale_factor_Fone)))))) /\ (((((exists ff_h_pvs_factor_Fonepositive. ff_h_pvs_factor_Fonepositive + S (dst_positive_factor_Fone) = S ((S (1)) * dst_positive_scale_factor_Fone)) /\ exists ff_q_pvs_factor_Fonepositive. dst_positive_code_factor_Fone = ff_q_pvs_factor_Fonepositive * S ((S (1)) * dst_positive_scale_factor_Fone) + (dst_positive_factor_Fone))) /\ (((((exists ff_h_pvs_factor_Fonenegative. ff_h_pvs_factor_Fonenegative + S (dst_negative_factor_Fone) = S ((S (1)) * dst_negative_scale_factor_Fone)) /\ exists ff_q_pvs_factor_Fonenegative. dst_negative_code_factor_Fone = ff_q_pvs_factor_Fonenegative * S ((S (1)) * dst_negative_scale_factor_Fone) + (dst_negative_factor_Fone))) /\ (exists ge_balance_positive_factor_Fonevalue ge_balance_negative_factor_Fonevalue. (((((2) = 2 * (ge_balance_positive_factor_Fonevalue) /\ (ge_balance_negative_factor_Fonevalue) = 0) \/ exists ge_signed_half_factor_Fonevaluedecode. (((2) = 2 * ge_signed_half_factor_Fonevaluedecode + 1 /\ (ge_balance_positive_factor_Fonevalue) = 0) /\ (ge_balance_negative_factor_Fonevalue) = S ge_signed_half_factor_Fonevaluedecode))) /\ ((dst_positive_factor_Fone) + ge_balance_negative_factor_Fonevalue = (dst_negative_factor_Fone) + ge_balance_positive_factor_Fonevalue))))))))) /\ (forall mp_a_factor_F mp_b_factor_F mp_x_factor_F mp_y_factor_F mp_z_factor_F. ~(mp_a_factor_F=0) -> ~(mp_b_factor_F=0) -> (exists pvs_le_gap_factor_Fbound. pvs_le_gap_factor_Fbound + (mp_a_factor_F*mp_b_factor_F) = (N)) -> (forall frp_divisor_factor_Fcoprime. (exists frp_left_factor_factor_Fcoprime. mp_a_factor_F = frp_divisor_factor_Fcoprime * frp_left_factor_factor_Fcoprime) -> (exists frp_right_factor_factor_Fcoprime. mp_b_factor_F = frp_divisor_factor_Fcoprime * frp_right_factor_factor_Fcoprime) -> frp_divisor_factor_Fcoprime = 1) -> (exists dst_positive_code_factor_Ffirst dst_positive_scale_factor_Ffirst dst_negative_code_factor_Ffirst dst_negative_scale_factor_Ffirst dst_positive_factor_Ffirst dst_negative_factor_Ffirst. (((F) = (((((dst_positive_code_factor_Ffirst) + (dst_positive_scale_factor_Ffirst)) * S ((dst_positive_code_factor_Ffirst) + (dst_positive_scale_factor_Ffirst)) + ((dst_positive_scale_factor_Ffirst) + (dst_positive_scale_factor_Ffirst))) + (((dst_negative_code_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)) * S ((dst_negative_code_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)) + ((dst_negative_scale_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)))) * S ((((dst_positive_code_factor_Ffirst) + (dst_positive_scale_factor_Ffirst)) * S ((dst_positive_code_factor_Ffirst) + (dst_positive_scale_factor_Ffirst)) + ((dst_positive_scale_factor_Ffirst) + (dst_positive_scale_factor_Ffirst))) + (((dst_negative_code_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)) * S ((dst_negative_code_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)) + ((dst_negative_scale_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)))) + ((((dst_negative_code_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)) * S ((dst_negative_code_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)) + ((dst_negative_scale_factor_Ffirst) + (dst_negative_scale_factor_Ffirst))) + (((dst_negative_code_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)) * S ((dst_negative_code_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)) + ((dst_negative_scale_factor_Ffirst) + (dst_negative_scale_factor_Ffirst)))))) /\ (((((exists ff_h_pvs_factor_Ffirstpositive. ff_h_pvs_factor_Ffirstpositive + S (dst_positive_factor_Ffirst) = S ((S (mp_a_factor_F)) * dst_positive_scale_factor_Ffirst)) /\ exists ff_q_pvs_factor_Ffirstpositive. dst_positive_code_factor_Ffirst = ff_q_pvs_factor_Ffirstpositive * S ((S (mp_a_factor_F)) * dst_positive_scale_factor_Ffirst) + (dst_positive_factor_Ffirst))) /\ (((((exists ff_h_pvs_factor_Ffirstnegative. ff_h_pvs_factor_Ffirstnegative + S (dst_negative_factor_Ffirst) = S ((S (mp_a_factor_F)) * dst_negative_scale_factor_Ffirst)) /\ exists ff_q_pvs_factor_Ffirstnegative. dst_negative_code_factor_Ffirst = ff_q_pvs_factor_Ffirstnegative * S ((S (mp_a_factor_F)) * dst_negative_scale_factor_Ffirst) + (dst_negative_factor_Ffirst))) /\ (exists ge_balance_positive_factor_Ffirstvalue ge_balance_negative_factor_Ffirstvalue. (((((mp_x_factor_F) = 2 * (ge_balance_positive_factor_Ffirstvalue) /\ (ge_balance_negative_factor_Ffirstvalue) = 0) \/ exists ge_signed_half_factor_Ffirstvaluedecode. (((mp_x_factor_F) = 2 * ge_signed_half_factor_Ffirstvaluedecode + 1 /\ (ge_balance_positive_factor_Ffirstvalue) = 0) /\ (ge_balance_negative_factor_Ffirstvalue) = S ge_signed_half_factor_Ffirstvaluedecode))) /\ ((dst_positive_factor_Ffirst) + ge_balance_negative_factor_Ffirstvalue = (dst_negative_factor_Ffirst) + ge_balance_positive_factor_Ffirstvalue))))))))) -> (exists dst_positive_code_factor_Fsecond dst_positive_scale_factor_Fsecond dst_negative_code_factor_Fsecond dst_negative_scale_factor_Fsecond dst_positive_factor_Fsecond dst_negative_factor_Fsecond. (((F) = (((((dst_positive_code_factor_Fsecond) + (dst_positive_scale_factor_Fsecond)) * S ((dst_positive_code_factor_Fsecond) + (dst_positive_scale_factor_Fsecond)) + ((dst_positive_scale_factor_Fsecond) + (dst_positive_scale_factor_Fsecond))) + (((dst_negative_code_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)) * S ((dst_negative_code_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)) + ((dst_negative_scale_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)))) * S ((((dst_positive_code_factor_Fsecond) + (dst_positive_scale_factor_Fsecond)) * S ((dst_positive_code_factor_Fsecond) + (dst_positive_scale_factor_Fsecond)) + ((dst_positive_scale_factor_Fsecond) + (dst_positive_scale_factor_Fsecond))) + (((dst_negative_code_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)) * S ((dst_negative_code_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)) + ((dst_negative_scale_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)))) + ((((dst_negative_code_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)) * S ((dst_negative_code_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)) + ((dst_negative_scale_factor_Fsecond) + (dst_negative_scale_factor_Fsecond))) + (((dst_negative_code_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)) * S ((dst_negative_code_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)) + ((dst_negative_scale_factor_Fsecond) + (dst_negative_scale_factor_Fsecond)))))) /\ (((((exists ff_h_pvs_factor_Fsecondpositive. ff_h_pvs_factor_Fsecondpositive + S (dst_positive_factor_Fsecond) = S ((S (mp_b_factor_F)) * dst_positive_scale_factor_Fsecond)) /\ exists ff_q_pvs_factor_Fsecondpositive. dst_positive_code_factor_Fsecond = ff_q_pvs_factor_Fsecondpositive * S ((S (mp_b_factor_F)) * dst_positive_scale_factor_Fsecond) + (dst_positive_factor_Fsecond))) /\ (((((exists ff_h_pvs_factor_Fsecondnegative. ff_h_pvs_factor_Fsecondnegative + S (dst_negative_factor_Fsecond) = S ((S (mp_b_factor_F)) * dst_negative_scale_factor_Fsecond)) /\ exists ff_q_pvs_factor_Fsecondnegative. dst_negative_code_factor_Fsecond = ff_q_pvs_factor_Fsecondnegative * S ((S (mp_b_factor_F)) * dst_negative_scale_factor_Fsecond) + (dst_negative_factor_Fsecond))) /\ (exists ge_balance_positive_factor_Fsecondvalue ge_balance_negative_factor_Fsecondvalue. (((((mp_y_factor_F) = 2 * (ge_balance_positive_factor_Fsecondvalue) /\ (ge_balance_negative_factor_Fsecondvalue) = 0) \/ exists ge_signed_half_factor_Fsecondvaluedecode. (((mp_y_factor_F) = 2 * ge_signed_half_factor_Fsecondvaluedecode + 1 /\ (ge_balance_positive_factor_Fsecondvalue) = 0) /\ (ge_balance_negative_factor_Fsecondvalue) = S ge_signed_half_factor_Fsecondvaluedecode))) /\ ((dst_positive_factor_Fsecond) + ge_balance_negative_factor_Fsecondvalue = (dst_negative_factor_Fsecond) + ge_balance_positive_factor_Fsecondvalue))))))))) -> (exists dst_positive_code_factor_Fproduct dst_positive_scale_factor_Fproduct dst_negative_code_factor_Fproduct dst_negative_scale_factor_Fproduct dst_positive_factor_Fproduct dst_negative_factor_Fproduct. (((F) = (((((dst_positive_code_factor_Fproduct) + (dst_positive_scale_factor_Fproduct)) * S ((dst_positive_code_factor_Fproduct) + (dst_positive_scale_factor_Fproduct)) + ((dst_positive_scale_factor_Fproduct) + (dst_positive_scale_factor_Fproduct))) + (((dst_negative_code_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)) * S ((dst_negative_code_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)) + ((dst_negative_scale_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)))) * S ((((dst_positive_code_factor_Fproduct) + (dst_positive_scale_factor_Fproduct)) * S ((dst_positive_code_factor_Fproduct) + (dst_positive_scale_factor_Fproduct)) + ((dst_positive_scale_factor_Fproduct) + (dst_positive_scale_factor_Fproduct))) + (((dst_negative_code_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)) * S ((dst_negative_code_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)) + ((dst_negative_scale_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)))) + ((((dst_negative_code_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)) * S ((dst_negative_code_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)) + ((dst_negative_scale_factor_Fproduct) + (dst_negative_scale_factor_Fproduct))) + (((dst_negative_code_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)) * S ((dst_negative_code_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)) + ((dst_negative_scale_factor_Fproduct) + (dst_negative_scale_factor_Fproduct)))))) /\ (((((exists ff_h_pvs_factor_Fproductpositive. ff_h_pvs_factor_Fproductpositive + S (dst_positive_factor_Fproduct) = S ((S (mp_a_factor_F*mp_b_factor_F)) * dst_positive_scale_factor_Fproduct)) /\ exists ff_q_pvs_factor_Fproductpositive. dst_positive_code_factor_Fproduct = ff_q_pvs_factor_Fproductpositive * S ((S (mp_a_factor_F*mp_b_factor_F)) * dst_positive_scale_factor_Fproduct) + (dst_positive_factor_Fproduct))) /\ (((((exists ff_h_pvs_factor_Fproductnegative. ff_h_pvs_factor_Fproductnegative + S (dst_negative_factor_Fproduct) = S ((S (mp_a_factor_F*mp_b_factor_F)) * dst_negative_scale_factor_Fproduct)) /\ exists ff_q_pvs_factor_Fproductnegative. dst_negative_code_factor_Fproduct = ff_q_pvs_factor_Fproductnegative * S ((S (mp_a_factor_F*mp_b_factor_F)) * dst_negative_scale_factor_Fproduct) + (dst_negative_factor_Fproduct))) /\ (exists ge_balance_positive_factor_Fproductvalue ge_balance_negative_factor_Fproductvalue. (((((mp_z_factor_F) = 2 * (ge_balance_positive_factor_Fproductvalue) /\ (ge_balance_negative_factor_Fproductvalue) = 0) \/ exists ge_signed_half_factor_Fproductvaluedecode. (((mp_z_factor_F) = 2 * ge_signed_half_factor_Fproductvaluedecode + 1 /\ (ge_balance_positive_factor_Fproductvalue) = 0) /\ (ge_balance_negative_factor_Fproductvalue) = S ge_signed_half_factor_Fproductvaluedecode))) /\ ((dst_positive_factor_Fproduct) + ge_balance_negative_factor_Fproductvalue = (dst_negative_factor_Fproduct) + ge_balance_positive_factor_Fproductvalue))))))))) -> (exists sto_ap_factor_Flaw sto_an_factor_Flaw sto_bp_factor_Flaw sto_bn_factor_Flaw sto_cp_factor_Flaw sto_cn_factor_Flaw. (((((mp_x_factor_F) = 2 * (sto_ap_factor_Flaw) /\ (sto_an_factor_Flaw) = 0) \/ exists ge_signed_half_factor_Flawleft. (((mp_x_factor_F) = 2 * ge_signed_half_factor_Flawleft + 1 /\ (sto_ap_factor_Flaw) = 0) /\ (sto_an_factor_Flaw) = S ge_signed_half_factor_Flawleft))) /\ ((((((mp_y_factor_F) = 2 * (sto_bp_factor_Flaw) /\ (sto_bn_factor_Flaw) = 0) \/ exists ge_signed_half_factor_Flawright. (((mp_y_factor_F) = 2 * ge_signed_half_factor_Flawright + 1 /\ (sto_bp_factor_Flaw) = 0) /\ (sto_bn_factor_Flaw) = S ge_signed_half_factor_Flawright))) /\ ((((((mp_z_factor_F) = 2 * (sto_cp_factor_Flaw) /\ (sto_cn_factor_Flaw) = 0) \/ exists ge_signed_half_factor_Flawoutput. (((mp_z_factor_F) = 2 * ge_signed_half_factor_Flawoutput + 1 /\ (sto_cp_factor_Flaw) = 0) /\ (sto_cn_factor_Flaw) = S ge_signed_half_factor_Flawoutput))) /\ ((sto_ap_factor_Flaw * sto_bp_factor_Flaw + sto_an_factor_Flaw * sto_bn_factor_Flaw) + sto_cn_factor_Flaw = (sto_ap_factor_Flaw * sto_bn_factor_Flaw + sto_an_factor_Flaw * sto_bp_factor_Flaw) + sto_cp_factor_Flaw)))))))))))))) -> (((~((N)=0)) /\ (((exists dst_positive_code_factor_Gtable dst_positive_scale_factor_Gtable dst_negative_code_factor_Gtable dst_negative_scale_factor_Gtable. (((G) = (((((dst_positive_code_factor_Gtable) + (dst_positive_scale_factor_Gtable)) * S ((dst_positive_code_factor_Gtable) + (dst_positive_scale_factor_Gtable)) + ((dst_positive_scale_factor_Gtable) + (dst_positive_scale_factor_Gtable))) + (((dst_negative_code_factor_Gtable) + (dst_negative_scale_factor_Gtable)) * S ((dst_negative_code_factor_Gtable) + (dst_negative_scale_factor_Gtable)) + ((dst_negative_scale_factor_Gtable) + (dst_negative_scale_factor_Gtable)))) * S ((((dst_positive_code_factor_Gtable) + (dst_positive_scale_factor_Gtable)) * S ((dst_positive_code_factor_Gtable) + (dst_positive_scale_factor_Gtable)) + ((dst_positive_scale_factor_Gtable) + (dst_positive_scale_factor_Gtable))) + (((dst_negative_code_factor_Gtable) + (dst_negative_scale_factor_Gtable)) * S ((dst_negative_code_factor_Gtable) + (dst_negative_scale_factor_Gtable)) + ((dst_negative_scale_factor_Gtable) + (dst_negative_scale_factor_Gtable)))) + ((((dst_negative_code_factor_Gtable) + (dst_negative_scale_factor_Gtable)) * S ((dst_negative_code_factor_Gtable) + (dst_negative_scale_factor_Gtable)) + ((dst_negative_scale_factor_Gtable) + (dst_negative_scale_factor_Gtable))) + (((dst_negative_code_factor_Gtable) + (dst_negative_scale_factor_Gtable)) * S ((dst_negative_code_factor_Gtable) + (dst_negative_scale_factor_Gtable)) + ((dst_negative_scale_factor_Gtable) + (dst_negative_scale_factor_Gtable)))))) /\ (forall dst_index_factor_Gtable. (exists pvs_le_gap_factor_Gtabledomain. pvs_le_gap_factor_Gtabledomain + (dst_index_factor_Gtable) = (N)) -> exists dst_positive_factor_Gtable dst_negative_factor_Gtable dst_value_factor_Gtable. ((((exists ff_h_pvs_factor_Gtableentrypositive. ff_h_pvs_factor_Gtableentrypositive + S (dst_positive_factor_Gtable) = S ((S (dst_index_factor_Gtable)) * dst_positive_scale_factor_Gtable)) /\ exists ff_q_pvs_factor_Gtableentrypositive. dst_positive_code_factor_Gtable = ff_q_pvs_factor_Gtableentrypositive * S ((S (dst_index_factor_Gtable)) * dst_positive_scale_factor_Gtable) + (dst_positive_factor_Gtable))) /\ (((((exists ff_h_pvs_factor_Gtableentrynegative. ff_h_pvs_factor_Gtableentrynegative + S (dst_negative_factor_Gtable) = S ((S (dst_index_factor_Gtable)) * dst_negative_scale_factor_Gtable)) /\ exists ff_q_pvs_factor_Gtableentrynegative. dst_negative_code_factor_Gtable = ff_q_pvs_factor_Gtableentrynegative * S ((S (dst_index_factor_Gtable)) * dst_negative_scale_factor_Gtable) + (dst_negative_factor_Gtable))) /\ (exists ge_balance_positive_factor_Gtableentryvalue ge_balance_negative_factor_Gtableentryvalue. (((((dst_value_factor_Gtable) = 2 * (ge_balance_positive_factor_Gtableentryvalue) /\ (ge_balance_negative_factor_Gtableentryvalue) = 0) \/ exists ge_signed_half_factor_Gtableentryvaluedecode. (((dst_value_factor_Gtable) = 2 * ge_signed_half_factor_Gtableentryvaluedecode + 1 /\ (ge_balance_positive_factor_Gtableentryvalue) = 0) /\ (ge_balance_negative_factor_Gtableentryvalue) = S ge_signed_half_factor_Gtableentryvaluedecode))) /\ ((dst_positive_factor_Gtable) + ge_balance_negative_factor_Gtableentryvalue = (dst_negative_factor_Gtable) + ge_balance_positive_factor_Gtableentryvalue))))))))) /\ (((exists dst_positive_code_factor_Gone dst_positive_scale_factor_Gone dst_negative_code_factor_Gone dst_negative_scale_factor_Gone dst_positive_factor_Gone dst_negative_factor_Gone. (((G) = (((((dst_positive_code_factor_Gone) + (dst_positive_scale_factor_Gone)) * S ((dst_positive_code_factor_Gone) + (dst_positive_scale_factor_Gone)) + ((dst_positive_scale_factor_Gone) + (dst_positive_scale_factor_Gone))) + (((dst_negative_code_factor_Gone) + (dst_negative_scale_factor_Gone)) * S ((dst_negative_code_factor_Gone) + (dst_negative_scale_factor_Gone)) + ((dst_negative_scale_factor_Gone) + (dst_negative_scale_factor_Gone)))) * S ((((dst_positive_code_factor_Gone) + (dst_positive_scale_factor_Gone)) * S ((dst_positive_code_factor_Gone) + (dst_positive_scale_factor_Gone)) + ((dst_positive_scale_factor_Gone) + (dst_positive_scale_factor_Gone))) + (((dst_negative_code_factor_Gone) + (dst_negative_scale_factor_Gone)) * S ((dst_negative_code_factor_Gone) + (dst_negative_scale_factor_Gone)) + ((dst_negative_scale_factor_Gone) + (dst_negative_scale_factor_Gone)))) + ((((dst_negative_code_factor_Gone) + (dst_negative_scale_factor_Gone)) * S ((dst_negative_code_factor_Gone) + (dst_negative_scale_factor_Gone)) + ((dst_negative_scale_factor_Gone) + (dst_negative_scale_factor_Gone))) + (((dst_negative_code_factor_Gone) + (dst_negative_scale_factor_Gone)) * S ((dst_negative_code_factor_Gone) + (dst_negative_scale_factor_Gone)) + ((dst_negative_scale_factor_Gone) + (dst_negative_scale_factor_Gone)))))) /\ (((((exists ff_h_pvs_factor_Gonepositive. ff_h_pvs_factor_Gonepositive + S (dst_positive_factor_Gone) = S ((S (1)) * dst_positive_scale_factor_Gone)) /\ exists ff_q_pvs_factor_Gonepositive. dst_positive_code_factor_Gone = ff_q_pvs_factor_Gonepositive * S ((S (1)) * dst_positive_scale_factor_Gone) + (dst_positive_factor_Gone))) /\ (((((exists ff_h_pvs_factor_Gonenegative. ff_h_pvs_factor_Gonenegative + S (dst_negative_factor_Gone) = S ((S (1)) * dst_negative_scale_factor_Gone)) /\ exists ff_q_pvs_factor_Gonenegative. dst_negative_code_factor_Gone = ff_q_pvs_factor_Gonenegative * S ((S (1)) * dst_negative_scale_factor_Gone) + (dst_negative_factor_Gone))) /\ (exists ge_balance_positive_factor_Gonevalue ge_balance_negative_factor_Gonevalue. (((((2) = 2 * (ge_balance_positive_factor_Gonevalue) /\ (ge_balance_negative_factor_Gonevalue) = 0) \/ exists ge_signed_half_factor_Gonevaluedecode. (((2) = 2 * ge_signed_half_factor_Gonevaluedecode + 1 /\ (ge_balance_positive_factor_Gonevalue) = 0) /\ (ge_balance_negative_factor_Gonevalue) = S ge_signed_half_factor_Gonevaluedecode))) /\ ((dst_positive_factor_Gone) + ge_balance_negative_factor_Gonevalue = (dst_negative_factor_Gone) + ge_balance_positive_factor_Gonevalue))))))))) /\ (forall mp_a_factor_G mp_b_factor_G mp_x_factor_G mp_y_factor_G mp_z_factor_G. ~(mp_a_factor_G=0) -> ~(mp_b_factor_G=0) -> (exists pvs_le_gap_factor_Gbound. pvs_le_gap_factor_Gbound + (mp_a_factor_G*mp_b_factor_G) = (N)) -> (forall frp_divisor_factor_Gcoprime. (exists frp_left_factor_factor_Gcoprime. mp_a_factor_G = frp_divisor_factor_Gcoprime * frp_left_factor_factor_Gcoprime) -> (exists frp_right_factor_factor_Gcoprime. mp_b_factor_G = frp_divisor_factor_Gcoprime * frp_right_factor_factor_Gcoprime) -> frp_divisor_factor_Gcoprime = 1) -> (exists dst_positive_code_factor_Gfirst dst_positive_scale_factor_Gfirst dst_negative_code_factor_Gfirst dst_negative_scale_factor_Gfirst dst_positive_factor_Gfirst dst_negative_factor_Gfirst. (((G) = (((((dst_positive_code_factor_Gfirst) + (dst_positive_scale_factor_Gfirst)) * S ((dst_positive_code_factor_Gfirst) + (dst_positive_scale_factor_Gfirst)) + ((dst_positive_scale_factor_Gfirst) + (dst_positive_scale_factor_Gfirst))) + (((dst_negative_code_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)) * S ((dst_negative_code_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)) + ((dst_negative_scale_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)))) * S ((((dst_positive_code_factor_Gfirst) + (dst_positive_scale_factor_Gfirst)) * S ((dst_positive_code_factor_Gfirst) + (dst_positive_scale_factor_Gfirst)) + ((dst_positive_scale_factor_Gfirst) + (dst_positive_scale_factor_Gfirst))) + (((dst_negative_code_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)) * S ((dst_negative_code_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)) + ((dst_negative_scale_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)))) + ((((dst_negative_code_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)) * S ((dst_negative_code_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)) + ((dst_negative_scale_factor_Gfirst) + (dst_negative_scale_factor_Gfirst))) + (((dst_negative_code_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)) * S ((dst_negative_code_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)) + ((dst_negative_scale_factor_Gfirst) + (dst_negative_scale_factor_Gfirst)))))) /\ (((((exists ff_h_pvs_factor_Gfirstpositive. ff_h_pvs_factor_Gfirstpositive + S (dst_positive_factor_Gfirst) = S ((S (mp_a_factor_G)) * dst_positive_scale_factor_Gfirst)) /\ exists ff_q_pvs_factor_Gfirstpositive. dst_positive_code_factor_Gfirst = ff_q_pvs_factor_Gfirstpositive * S ((S (mp_a_factor_G)) * dst_positive_scale_factor_Gfirst) + (dst_positive_factor_Gfirst))) /\ (((((exists ff_h_pvs_factor_Gfirstnegative. ff_h_pvs_factor_Gfirstnegative + S (dst_negative_factor_Gfirst) = S ((S (mp_a_factor_G)) * dst_negative_scale_factor_Gfirst)) /\ exists ff_q_pvs_factor_Gfirstnegative. dst_negative_code_factor_Gfirst = ff_q_pvs_factor_Gfirstnegative * S ((S (mp_a_factor_G)) * dst_negative_scale_factor_Gfirst) + (dst_negative_factor_Gfirst))) /\ (exists ge_balance_positive_factor_Gfirstvalue ge_balance_negative_factor_Gfirstvalue. (((((mp_x_factor_G) = 2 * (ge_balance_positive_factor_Gfirstvalue) /\ (ge_balance_negative_factor_Gfirstvalue) = 0) \/ exists ge_signed_half_factor_Gfirstvaluedecode. (((mp_x_factor_G) = 2 * ge_signed_half_factor_Gfirstvaluedecode + 1 /\ (ge_balance_positive_factor_Gfirstvalue) = 0) /\ (ge_balance_negative_factor_Gfirstvalue) = S ge_signed_half_factor_Gfirstvaluedecode))) /\ ((dst_positive_factor_Gfirst) + ge_balance_negative_factor_Gfirstvalue = (dst_negative_factor_Gfirst) + ge_balance_positive_factor_Gfirstvalue))))))))) -> (exists dst_positive_code_factor_Gsecond dst_positive_scale_factor_Gsecond dst_negative_code_factor_Gsecond dst_negative_scale_factor_Gsecond dst_positive_factor_Gsecond dst_negative_factor_Gsecond. (((G) = (((((dst_positive_code_factor_Gsecond) + (dst_positive_scale_factor_Gsecond)) * S ((dst_positive_code_factor_Gsecond) + (dst_positive_scale_factor_Gsecond)) + ((dst_positive_scale_factor_Gsecond) + (dst_positive_scale_factor_Gsecond))) + (((dst_negative_code_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)) * S ((dst_negative_code_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)) + ((dst_negative_scale_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)))) * S ((((dst_positive_code_factor_Gsecond) + (dst_positive_scale_factor_Gsecond)) * S ((dst_positive_code_factor_Gsecond) + (dst_positive_scale_factor_Gsecond)) + ((dst_positive_scale_factor_Gsecond) + (dst_positive_scale_factor_Gsecond))) + (((dst_negative_code_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)) * S ((dst_negative_code_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)) + ((dst_negative_scale_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)))) + ((((dst_negative_code_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)) * S ((dst_negative_code_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)) + ((dst_negative_scale_factor_Gsecond) + (dst_negative_scale_factor_Gsecond))) + (((dst_negative_code_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)) * S ((dst_negative_code_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)) + ((dst_negative_scale_factor_Gsecond) + (dst_negative_scale_factor_Gsecond)))))) /\ (((((exists ff_h_pvs_factor_Gsecondpositive. ff_h_pvs_factor_Gsecondpositive + S (dst_positive_factor_Gsecond) = S ((S (mp_b_factor_G)) * dst_positive_scale_factor_Gsecond)) /\ exists ff_q_pvs_factor_Gsecondpositive. dst_positive_code_factor_Gsecond = ff_q_pvs_factor_Gsecondpositive * S ((S (mp_b_factor_G)) * dst_positive_scale_factor_Gsecond) + (dst_positive_factor_Gsecond))) /\ (((((exists ff_h_pvs_factor_Gsecondnegative. ff_h_pvs_factor_Gsecondnegative + S (dst_negative_factor_Gsecond) = S ((S (mp_b_factor_G)) * dst_negative_scale_factor_Gsecond)) /\ exists ff_q_pvs_factor_Gsecondnegative. dst_negative_code_factor_Gsecond = ff_q_pvs_factor_Gsecondnegative * S ((S (mp_b_factor_G)) * dst_negative_scale_factor_Gsecond) + (dst_negative_factor_Gsecond))) /\ (exists ge_balance_positive_factor_Gsecondvalue ge_balance_negative_factor_Gsecondvalue. (((((mp_y_factor_G) = 2 * (ge_balance_positive_factor_Gsecondvalue) /\ (ge_balance_negative_factor_Gsecondvalue) = 0) \/ exists ge_signed_half_factor_Gsecondvaluedecode. (((mp_y_factor_G) = 2 * ge_signed_half_factor_Gsecondvaluedecode + 1 /\ (ge_balance_positive_factor_Gsecondvalue) = 0) /\ (ge_balance_negative_factor_Gsecondvalue) = S ge_signed_half_factor_Gsecondvaluedecode))) /\ ((dst_positive_factor_Gsecond) + ge_balance_negative_factor_Gsecondvalue = (dst_negative_factor_Gsecond) + ge_balance_positive_factor_Gsecondvalue))))))))) -> (exists dst_positive_code_factor_Gproduct dst_positive_scale_factor_Gproduct dst_negative_code_factor_Gproduct dst_negative_scale_factor_Gproduct dst_positive_factor_Gproduct dst_negative_factor_Gproduct. (((G) = (((((dst_positive_code_factor_Gproduct) + (dst_positive_scale_factor_Gproduct)) * S ((dst_positive_code_factor_Gproduct) + (dst_positive_scale_factor_Gproduct)) + ((dst_positive_scale_factor_Gproduct) + (dst_positive_scale_factor_Gproduct))) + (((dst_negative_code_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)) * S ((dst_negative_code_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)) + ((dst_negative_scale_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)))) * S ((((dst_positive_code_factor_Gproduct) + (dst_positive_scale_factor_Gproduct)) * S ((dst_positive_code_factor_Gproduct) + (dst_positive_scale_factor_Gproduct)) + ((dst_positive_scale_factor_Gproduct) + (dst_positive_scale_factor_Gproduct))) + (((dst_negative_code_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)) * S ((dst_negative_code_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)) + ((dst_negative_scale_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)))) + ((((dst_negative_code_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)) * S ((dst_negative_code_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)) + ((dst_negative_scale_factor_Gproduct) + (dst_negative_scale_factor_Gproduct))) + (((dst_negative_code_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)) * S ((dst_negative_code_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)) + ((dst_negative_scale_factor_Gproduct) + (dst_negative_scale_factor_Gproduct)))))) /\ (((((exists ff_h_pvs_factor_Gproductpositive. ff_h_pvs_factor_Gproductpositive + S (dst_positive_factor_Gproduct) = S ((S (mp_a_factor_G*mp_b_factor_G)) * dst_positive_scale_factor_Gproduct)) /\ exists ff_q_pvs_factor_Gproductpositive. dst_positive_code_factor_Gproduct = ff_q_pvs_factor_Gproductpositive * S ((S (mp_a_factor_G*mp_b_factor_G)) * dst_positive_scale_factor_Gproduct) + (dst_positive_factor_Gproduct))) /\ (((((exists ff_h_pvs_factor_Gproductnegative. ff_h_pvs_factor_Gproductnegative + S (dst_negative_factor_Gproduct) = S ((S (mp_a_factor_G*mp_b_factor_G)) * dst_negative_scale_factor_Gproduct)) /\ exists ff_q_pvs_factor_Gproductnegative. dst_negative_code_factor_Gproduct = ff_q_pvs_factor_Gproductnegative * S ((S (mp_a_factor_G*mp_b_factor_G)) * dst_negative_scale_factor_Gproduct) + (dst_negative_factor_Gproduct))) /\ (exists ge_balance_positive_factor_Gproductvalue ge_balance_negative_factor_Gproductvalue. (((((mp_z_factor_G) = 2 * (ge_balance_positive_factor_Gproductvalue) /\ (ge_balance_negative_factor_Gproductvalue) = 0) \/ exists ge_signed_half_factor_Gproductvaluedecode. (((mp_z_factor_G) = 2 * ge_signed_half_factor_Gproductvaluedecode + 1 /\ (ge_balance_positive_factor_Gproductvalue) = 0) /\ (ge_balance_negative_factor_Gproductvalue) = S ge_signed_half_factor_Gproductvaluedecode))) /\ ((dst_positive_factor_Gproduct) + ge_balance_negative_factor_Gproductvalue = (dst_negative_factor_Gproduct) + ge_balance_positive_factor_Gproductvalue))))))))) -> (exists sto_ap_factor_Glaw sto_an_factor_Glaw sto_bp_factor_Glaw sto_bn_factor_Glaw sto_cp_factor_Glaw sto_cn_factor_Glaw. (((((mp_x_factor_G) = 2 * (sto_ap_factor_Glaw) /\ (sto_an_factor_Glaw) = 0) \/ exists ge_signed_half_factor_Glawleft. (((mp_x_factor_G) = 2 * ge_signed_half_factor_Glawleft + 1 /\ (sto_ap_factor_Glaw) = 0) /\ (sto_an_factor_Glaw) = S ge_signed_half_factor_Glawleft))) /\ ((((((mp_y_factor_G) = 2 * (sto_bp_factor_Glaw) /\ (sto_bn_factor_Glaw) = 0) \/ exists ge_signed_half_factor_Glawright. (((mp_y_factor_G) = 2 * ge_signed_half_factor_Glawright + 1 /\ (sto_bp_factor_Glaw) = 0) /\ (sto_bn_factor_Glaw) = S ge_signed_half_factor_Glawright))) /\ ((((((mp_z_factor_G) = 2 * (sto_cp_factor_Glaw) /\ (sto_cn_factor_Glaw) = 0) \/ exists ge_signed_half_factor_Glawoutput. (((mp_z_factor_G) = 2 * ge_signed_half_factor_Glawoutput + 1 /\ (sto_cp_factor_Glaw) = 0) /\ (sto_cn_factor_Glaw) = S ge_signed_half_factor_Glawoutput))) /\ ((sto_ap_factor_Glaw * sto_bp_factor_Glaw + sto_an_factor_Glaw * sto_bn_factor_Glaw) + sto_cn_factor_Glaw = (sto_ap_factor_Glaw * sto_bn_factor_Glaw + sto_an_factor_Glaw * sto_bp_factor_Glaw) + sto_cp_factor_Glaw)))))))))))))) -> (~(m=0)) -> (~(n=0)) -> (exists pvs_le_gap_factor_bound. pvs_le_gap_factor_bound + (m*n) = (N)) -> (forall sfd_common_divisor_factor_coprime. (exists pvs_factor_factor_coprimeleft. (m) = (sfd_common_divisor_factor_coprime) * pvs_factor_factor_coprimeleft) -> (exists pvs_factor_factor_coprimeright. (n) = (sfd_common_divisor_factor_coprime) * pvs_factor_factor_coprimeright) -> sfd_common_divisor_factor_coprime = 1) -> (((~((d)=0)) /\ (((~((e)=0)) /\ (((exists pvs_factor_factor_pairleft. (m) = (d) * pvs_factor_factor_pairleft) /\ (((exists pvs_factor_factor_pairright. (n) = (e) * pvs_factor_factor_pairright) /\ ((d*e)=(d)*(e)))))))))) -> ((((~((d)=0)) /\ (exists dc_quotient_factor_left dc_left_factor_left dc_right_factor_left. (((m)=(d)*dc_quotient_factor_left) /\ (((exists dst_positive_code_factor_leftleft dst_positive_scale_factor_leftleft dst_negative_code_factor_leftleft dst_negative_scale_factor_leftleft dst_positive_factor_leftleft dst_negative_factor_leftleft. (((F) = (((((dst_positive_code_factor_leftleft) + (dst_positive_scale_factor_leftleft)) * S ((dst_positive_code_factor_leftleft) + (dst_positive_scale_factor_leftleft)) + ((dst_positive_scale_factor_leftleft) + (dst_positive_scale_factor_leftleft))) + (((dst_negative_code_factor_leftleft) + (dst_negative_scale_factor_leftleft)) * S ((dst_negative_code_factor_leftleft) + (dst_negative_scale_factor_leftleft)) + ((dst_negative_scale_factor_leftleft) + (dst_negative_scale_factor_leftleft)))) * S ((((dst_positive_code_factor_leftleft) + (dst_positive_scale_factor_leftleft)) * S ((dst_positive_code_factor_leftleft) + (dst_positive_scale_factor_leftleft)) + ((dst_positive_scale_factor_leftleft) + (dst_positive_scale_factor_leftleft))) + (((dst_negative_code_factor_leftleft) + (dst_negative_scale_factor_leftleft)) * S ((dst_negative_code_factor_leftleft) + (dst_negative_scale_factor_leftleft)) + ((dst_negative_scale_factor_leftleft) + (dst_negative_scale_factor_leftleft)))) + ((((dst_negative_code_factor_leftleft) + (dst_negative_scale_factor_leftleft)) * S ((dst_negative_code_factor_leftleft) + (dst_negative_scale_factor_leftleft)) + ((dst_negative_scale_factor_leftleft) + (dst_negative_scale_factor_leftleft))) + (((dst_negative_code_factor_leftleft) + (dst_negative_scale_factor_leftleft)) * S ((dst_negative_code_factor_leftleft) + (dst_negative_scale_factor_leftleft)) + ((dst_negative_scale_factor_leftleft) + (dst_negative_scale_factor_leftleft)))))) /\ (((((exists ff_h_pvs_factor_leftleftpositive. ff_h_pvs_factor_leftleftpositive + S (dst_positive_factor_leftleft) = S ((S (d)) * dst_positive_scale_factor_leftleft)) /\ exists ff_q_pvs_factor_leftleftpositive. dst_positive_code_factor_leftleft = ff_q_pvs_factor_leftleftpositive * S ((S (d)) * dst_positive_scale_factor_leftleft) + (dst_positive_factor_leftleft))) /\ (((((exists ff_h_pvs_factor_leftleftnegative. ff_h_pvs_factor_leftleftnegative + S (dst_negative_factor_leftleft) = S ((S (d)) * dst_negative_scale_factor_leftleft)) /\ exists ff_q_pvs_factor_leftleftnegative. dst_negative_code_factor_leftleft = ff_q_pvs_factor_leftleftnegative * S ((S (d)) * dst_negative_scale_factor_leftleft) + (dst_negative_factor_leftleft))) /\ (exists ge_balance_positive_factor_leftleftvalue ge_balance_negative_factor_leftleftvalue. (((((dc_left_factor_left) = 2 * (ge_balance_positive_factor_leftleftvalue) /\ (ge_balance_negative_factor_leftleftvalue) = 0) \/ exists ge_signed_half_factor_leftleftvaluedecode. (((dc_left_factor_left) = 2 * ge_signed_half_factor_leftleftvaluedecode + 1 /\ (ge_balance_positive_factor_leftleftvalue) = 0) /\ (ge_balance_negative_factor_leftleftvalue) = S ge_signed_half_factor_leftleftvaluedecode))) /\ ((dst_positive_factor_leftleft) + ge_balance_negative_factor_leftleftvalue = (dst_negative_factor_leftleft) + ge_balance_positive_factor_leftleftvalue))))))))) /\ (((exists dst_positive_code_factor_leftright dst_positive_scale_factor_leftright dst_negative_code_factor_leftright dst_negative_scale_factor_leftright dst_positive_factor_leftright dst_negative_factor_leftright. (((G) = (((((dst_positive_code_factor_leftright) + (dst_positive_scale_factor_leftright)) * S ((dst_positive_code_factor_leftright) + (dst_positive_scale_factor_leftright)) + ((dst_positive_scale_factor_leftright) + (dst_positive_scale_factor_leftright))) + (((dst_negative_code_factor_leftright) + (dst_negative_scale_factor_leftright)) * S ((dst_negative_code_factor_leftright) + (dst_negative_scale_factor_leftright)) + ((dst_negative_scale_factor_leftright) + (dst_negative_scale_factor_leftright)))) * S ((((dst_positive_code_factor_leftright) + (dst_positive_scale_factor_leftright)) * S ((dst_positive_code_factor_leftright) + (dst_positive_scale_factor_leftright)) + ((dst_positive_scale_factor_leftright) + (dst_positive_scale_factor_leftright))) + (((dst_negative_code_factor_leftright) + (dst_negative_scale_factor_leftright)) * S ((dst_negative_code_factor_leftright) + (dst_negative_scale_factor_leftright)) + ((dst_negative_scale_factor_leftright) + (dst_negative_scale_factor_leftright)))) + ((((dst_negative_code_factor_leftright) + (dst_negative_scale_factor_leftright)) * S ((dst_negative_code_factor_leftright) + (dst_negative_scale_factor_leftright)) + ((dst_negative_scale_factor_leftright) + (dst_negative_scale_factor_leftright))) + (((dst_negative_code_factor_leftright) + (dst_negative_scale_factor_leftright)) * S ((dst_negative_code_factor_leftright) + (dst_negative_scale_factor_leftright)) + ((dst_negative_scale_factor_leftright) + (dst_negative_scale_factor_leftright)))))) /\ (((((exists ff_h_pvs_factor_leftrightpositive. ff_h_pvs_factor_leftrightpositive + S (dst_positive_factor_leftright) = S ((S (dc_quotient_factor_left)) * dst_positive_scale_factor_leftright)) /\ exists ff_q_pvs_factor_leftrightpositive. dst_positive_code_factor_leftright = ff_q_pvs_factor_leftrightpositive * S ((S (dc_quotient_factor_left)) * dst_positive_scale_factor_leftright) + (dst_positive_factor_leftright))) /\ (((((exists ff_h_pvs_factor_leftrightnegative. ff_h_pvs_factor_leftrightnegative + S (dst_negative_factor_leftright) = S ((S (dc_quotient_factor_left)) * dst_negative_scale_factor_leftright)) /\ exists ff_q_pvs_factor_leftrightnegative. dst_negative_code_factor_leftright = ff_q_pvs_factor_leftrightnegative * S ((S (dc_quotient_factor_left)) * dst_negative_scale_factor_leftright) + (dst_negative_factor_leftright))) /\ (exists ge_balance_positive_factor_leftrightvalue ge_balance_negative_factor_leftrightvalue. (((((dc_right_factor_left) = 2 * (ge_balance_positive_factor_leftrightvalue) /\ (ge_balance_negative_factor_leftrightvalue) = 0) \/ exists ge_signed_half_factor_leftrightvaluedecode. (((dc_right_factor_left) = 2 * ge_signed_half_factor_leftrightvaluedecode + 1 /\ (ge_balance_positive_factor_leftrightvalue) = 0) /\ (ge_balance_negative_factor_leftrightvalue) = S ge_signed_half_factor_leftrightvaluedecode))) /\ ((dst_positive_factor_leftright) + ge_balance_negative_factor_leftrightvalue = (dst_negative_factor_leftright) + ge_balance_positive_factor_leftrightvalue))))))))) /\ (exists sto_ap_factor_leftproduct sto_an_factor_leftproduct sto_bp_factor_leftproduct sto_bn_factor_leftproduct sto_cp_factor_leftproduct sto_cn_factor_leftproduct. (((((dc_left_factor_left) = 2 * (sto_ap_factor_leftproduct) /\ (sto_an_factor_leftproduct) = 0) \/ exists ge_signed_half_factor_leftproductleft. (((dc_left_factor_left) = 2 * ge_signed_half_factor_leftproductleft + 1 /\ (sto_ap_factor_leftproduct) = 0) /\ (sto_an_factor_leftproduct) = S ge_signed_half_factor_leftproductleft))) /\ ((((((dc_right_factor_left) = 2 * (sto_bp_factor_leftproduct) /\ (sto_bn_factor_leftproduct) = 0) \/ exists ge_signed_half_factor_leftproductright. (((dc_right_factor_left) = 2 * ge_signed_half_factor_leftproductright + 1 /\ (sto_bp_factor_leftproduct) = 0) /\ (sto_bn_factor_leftproduct) = S ge_signed_half_factor_leftproductright))) /\ ((((((left) = 2 * (sto_cp_factor_leftproduct) /\ (sto_cn_factor_leftproduct) = 0) \/ exists ge_signed_half_factor_leftproductoutput. (((left) = 2 * ge_signed_half_factor_leftproductoutput + 1 /\ (sto_cp_factor_leftproduct) = 0) /\ (sto_cn_factor_leftproduct) = S ge_signed_half_factor_leftproductoutput))) /\ ((sto_ap_factor_leftproduct * sto_bp_factor_leftproduct + sto_an_factor_leftproduct * sto_bn_factor_leftproduct) + sto_cn_factor_leftproduct = (sto_ap_factor_leftproduct * sto_bn_factor_leftproduct + sto_an_factor_leftproduct * sto_bp_factor_leftproduct) + sto_cp_factor_leftproduct))))))))))))))) \/ ((((d)=0 \/ ~(exists pvs_factor_factor_leftnondivisor. (m) = (d) * pvs_factor_factor_leftnondivisor)) /\ ((left)=0)))) -> ((((~((e)=0)) /\ (exists dc_quotient_factor_right dc_left_factor_right dc_right_factor_right. (((n)=(e)*dc_quotient_factor_right) /\ (((exists dst_positive_code_factor_rightleft dst_positive_scale_factor_rightleft dst_negative_code_factor_rightleft dst_negative_scale_factor_rightleft dst_positive_factor_rightleft dst_negative_factor_rightleft. (((F) = (((((dst_positive_code_factor_rightleft) + (dst_positive_scale_factor_rightleft)) * S ((dst_positive_code_factor_rightleft) + (dst_positive_scale_factor_rightleft)) + ((dst_positive_scale_factor_rightleft) + (dst_positive_scale_factor_rightleft))) + (((dst_negative_code_factor_rightleft) + (dst_negative_scale_factor_rightleft)) * S ((dst_negative_code_factor_rightleft) + (dst_negative_scale_factor_rightleft)) + ((dst_negative_scale_factor_rightleft) + (dst_negative_scale_factor_rightleft)))) * S ((((dst_positive_code_factor_rightleft) + (dst_positive_scale_factor_rightleft)) * S ((dst_positive_code_factor_rightleft) + (dst_positive_scale_factor_rightleft)) + ((dst_positive_scale_factor_rightleft) + (dst_positive_scale_factor_rightleft))) + (((dst_negative_code_factor_rightleft) + (dst_negative_scale_factor_rightleft)) * S ((dst_negative_code_factor_rightleft) + (dst_negative_scale_factor_rightleft)) + ((dst_negative_scale_factor_rightleft) + (dst_negative_scale_factor_rightleft)))) + ((((dst_negative_code_factor_rightleft) + (dst_negative_scale_factor_rightleft)) * S ((dst_negative_code_factor_rightleft) + (dst_negative_scale_factor_rightleft)) + ((dst_negative_scale_factor_rightleft) + (dst_negative_scale_factor_rightleft))) + (((dst_negative_code_factor_rightleft) + (dst_negative_scale_factor_rightleft)) * S ((dst_negative_code_factor_rightleft) + (dst_negative_scale_factor_rightleft)) + ((dst_negative_scale_factor_rightleft) + (dst_negative_scale_factor_rightleft)))))) /\ (((((exists ff_h_pvs_factor_rightleftpositive. ff_h_pvs_factor_rightleftpositive + S (dst_positive_factor_rightleft) = S ((S (e)) * dst_positive_scale_factor_rightleft)) /\ exists ff_q_pvs_factor_rightleftpositive. dst_positive_code_factor_rightleft = ff_q_pvs_factor_rightleftpositive * S ((S (e)) * dst_positive_scale_factor_rightleft) + (dst_positive_factor_rightleft))) /\ (((((exists ff_h_pvs_factor_rightleftnegative. ff_h_pvs_factor_rightleftnegative + S (dst_negative_factor_rightleft) = S ((S (e)) * dst_negative_scale_factor_rightleft)) /\ exists ff_q_pvs_factor_rightleftnegative. dst_negative_code_factor_rightleft = ff_q_pvs_factor_rightleftnegative * S ((S (e)) * dst_negative_scale_factor_rightleft) + (dst_negative_factor_rightleft))) /\ (exists ge_balance_positive_factor_rightleftvalue ge_balance_negative_factor_rightleftvalue. (((((dc_left_factor_right) = 2 * (ge_balance_positive_factor_rightleftvalue) /\ (ge_balance_negative_factor_rightleftvalue) = 0) \/ exists ge_signed_half_factor_rightleftvaluedecode. (((dc_left_factor_right) = 2 * ge_signed_half_factor_rightleftvaluedecode + 1 /\ (ge_balance_positive_factor_rightleftvalue) = 0) /\ (ge_balance_negative_factor_rightleftvalue) = S ge_signed_half_factor_rightleftvaluedecode))) /\ ((dst_positive_factor_rightleft) + ge_balance_negative_factor_rightleftvalue = (dst_negative_factor_rightleft) + ge_balance_positive_factor_rightleftvalue))))))))) /\ (((exists dst_positive_code_factor_rightright dst_positive_scale_factor_rightright dst_negative_code_factor_rightright dst_negative_scale_factor_rightright dst_positive_factor_rightright dst_negative_factor_rightright. (((G) = (((((dst_positive_code_factor_rightright) + (dst_positive_scale_factor_rightright)) * S ((dst_positive_code_factor_rightright) + (dst_positive_scale_factor_rightright)) + ((dst_positive_scale_factor_rightright) + (dst_positive_scale_factor_rightright))) + (((dst_negative_code_factor_rightright) + (dst_negative_scale_factor_rightright)) * S ((dst_negative_code_factor_rightright) + (dst_negative_scale_factor_rightright)) + ((dst_negative_scale_factor_rightright) + (dst_negative_scale_factor_rightright)))) * S ((((dst_positive_code_factor_rightright) + (dst_positive_scale_factor_rightright)) * S ((dst_positive_code_factor_rightright) + (dst_positive_scale_factor_rightright)) + ((dst_positive_scale_factor_rightright) + (dst_positive_scale_factor_rightright))) + (((dst_negative_code_factor_rightright) + (dst_negative_scale_factor_rightright)) * S ((dst_negative_code_factor_rightright) + (dst_negative_scale_factor_rightright)) + ((dst_negative_scale_factor_rightright) + (dst_negative_scale_factor_rightright)))) + ((((dst_negative_code_factor_rightright) + (dst_negative_scale_factor_rightright)) * S ((dst_negative_code_factor_rightright) + (dst_negative_scale_factor_rightright)) + ((dst_negative_scale_factor_rightright) + (dst_negative_scale_factor_rightright))) + (((dst_negative_code_factor_rightright) + (dst_negative_scale_factor_rightright)) * S ((dst_negative_code_factor_rightright) + (dst_negative_scale_factor_rightright)) + ((dst_negative_scale_factor_rightright) + (dst_negative_scale_factor_rightright)))))) /\ (((((exists ff_h_pvs_factor_rightrightpositive. ff_h_pvs_factor_rightrightpositive + S (dst_positive_factor_rightright) = S ((S (dc_quotient_factor_right)) * dst_positive_scale_factor_rightright)) /\ exists ff_q_pvs_factor_rightrightpositive. dst_positive_code_factor_rightright = ff_q_pvs_factor_rightrightpositive * S ((S (dc_quotient_factor_right)) * dst_positive_scale_factor_rightright) + (dst_positive_factor_rightright))) /\ (((((exists ff_h_pvs_factor_rightrightnegative. ff_h_pvs_factor_rightrightnegative + S (dst_negative_factor_rightright) = S ((S (dc_quotient_factor_right)) * dst_negative_scale_factor_rightright)) /\ exists ff_q_pvs_factor_rightrightnegative. dst_negative_code_factor_rightright = ff_q_pvs_factor_rightrightnegative * S ((S (dc_quotient_factor_right)) * dst_negative_scale_factor_rightright) + (dst_negative_factor_rightright))) /\ (exists ge_balance_positive_factor_rightrightvalue ge_balance_negative_factor_rightrightvalue. (((((dc_right_factor_right) = 2 * (ge_balance_positive_factor_rightrightvalue) /\ (ge_balance_negative_factor_rightrightvalue) = 0) \/ exists ge_signed_half_factor_rightrightvaluedecode. (((dc_right_factor_right) = 2 * ge_signed_half_factor_rightrightvaluedecode + 1 /\ (ge_balance_positive_factor_rightrightvalue) = 0) /\ (ge_balance_negative_factor_rightrightvalue) = S ge_signed_half_factor_rightrightvaluedecode))) /\ ((dst_positive_factor_rightright) + ge_balance_negative_factor_rightrightvalue = (dst_negative_factor_rightright) + ge_balance_positive_factor_rightrightvalue))))))))) /\ (exists sto_ap_factor_rightproduct sto_an_factor_rightproduct sto_bp_factor_rightproduct sto_bn_factor_rightproduct sto_cp_factor_rightproduct sto_cn_factor_rightproduct. (((((dc_left_factor_right) = 2 * (sto_ap_factor_rightproduct) /\ (sto_an_factor_rightproduct) = 0) \/ exists ge_signed_half_factor_rightproductleft. (((dc_left_factor_right) = 2 * ge_signed_half_factor_rightproductleft + 1 /\ (sto_ap_factor_rightproduct) = 0) /\ (sto_an_factor_rightproduct) = S ge_signed_half_factor_rightproductleft))) /\ ((((((dc_right_factor_right) = 2 * (sto_bp_factor_rightproduct) /\ (sto_bn_factor_rightproduct) = 0) \/ exists ge_signed_half_factor_rightproductright. (((dc_right_factor_right) = 2 * ge_signed_half_factor_rightproductright + 1 /\ (sto_bp_factor_rightproduct) = 0) /\ (sto_bn_factor_rightproduct) = S ge_signed_half_factor_rightproductright))) /\ ((((((right) = 2 * (sto_cp_factor_rightproduct) /\ (sto_cn_factor_rightproduct) = 0) \/ exists ge_signed_half_factor_rightproductoutput. (((right) = 2 * ge_signed_half_factor_rightproductoutput + 1 /\ (sto_cp_factor_rightproduct) = 0) /\ (sto_cn_factor_rightproduct) = S ge_signed_half_factor_rightproductoutput))) /\ ((sto_ap_factor_rightproduct * sto_bp_factor_rightproduct + sto_an_factor_rightproduct * sto_bn_factor_rightproduct) + sto_cn_factor_rightproduct = (sto_ap_factor_rightproduct * sto_bn_factor_rightproduct + sto_an_factor_rightproduct * sto_bp_factor_rightproduct) + sto_cp_factor_rightproduct))))))))))))))) \/ ((((e)=0 \/ ~(exists pvs_factor_factor_rightnondivisor. (n) = (e) * pvs_factor_factor_rightnondivisor)) /\ ((right)=0)))) -> ((((~((d*e)=0)) /\ (exists dc_quotient_factor_target dc_left_factor_target dc_right_factor_target. (((m*n)=(d*e)*dc_quotient_factor_target) /\ (((exists dst_positive_code_factor_targetleft dst_positive_scale_factor_targetleft dst_negative_code_factor_targetleft dst_negative_scale_factor_targetleft dst_positive_factor_targetleft dst_negative_factor_targetleft. (((F) = (((((dst_positive_code_factor_targetleft) + (dst_positive_scale_factor_targetleft)) * S ((dst_positive_code_factor_targetleft) + (dst_positive_scale_factor_targetleft)) + ((dst_positive_scale_factor_targetleft) + (dst_positive_scale_factor_targetleft))) + (((dst_negative_code_factor_targetleft) + (dst_negative_scale_factor_targetleft)) * S ((dst_negative_code_factor_targetleft) + (dst_negative_scale_factor_targetleft)) + ((dst_negative_scale_factor_targetleft) + (dst_negative_scale_factor_targetleft)))) * S ((((dst_positive_code_factor_targetleft) + (dst_positive_scale_factor_targetleft)) * S ((dst_positive_code_factor_targetleft) + (dst_positive_scale_factor_targetleft)) + ((dst_positive_scale_factor_targetleft) + (dst_positive_scale_factor_targetleft))) + (((dst_negative_code_factor_targetleft) + (dst_negative_scale_factor_targetleft)) * S ((dst_negative_code_factor_targetleft) + (dst_negative_scale_factor_targetleft)) + ((dst_negative_scale_factor_targetleft) + (dst_negative_scale_factor_targetleft)))) + ((((dst_negative_code_factor_targetleft) + (dst_negative_scale_factor_targetleft)) * S ((dst_negative_code_factor_targetleft) + (dst_negative_scale_factor_targetleft)) + ((dst_negative_scale_factor_targetleft) + (dst_negative_scale_factor_targetleft))) + (((dst_negative_code_factor_targetleft) + (dst_negative_scale_factor_targetleft)) * S ((dst_negative_code_factor_targetleft) + (dst_negative_scale_factor_targetleft)) + ((dst_negative_scale_factor_targetleft) + (dst_negative_scale_factor_targetleft)))))) /\ (((((exists ff_h_pvs_factor_targetleftpositive. ff_h_pvs_factor_targetleftpositive + S (dst_positive_factor_targetleft) = S ((S (d*e)) * dst_positive_scale_factor_targetleft)) /\ exists ff_q_pvs_factor_targetleftpositive. dst_positive_code_factor_targetleft = ff_q_pvs_factor_targetleftpositive * S ((S (d*e)) * dst_positive_scale_factor_targetleft) + (dst_positive_factor_targetleft))) /\ (((((exists ff_h_pvs_factor_targetleftnegative. ff_h_pvs_factor_targetleftnegative + S (dst_negative_factor_targetleft) = S ((S (d*e)) * dst_negative_scale_factor_targetleft)) /\ exists ff_q_pvs_factor_targetleftnegative. dst_negative_code_factor_targetleft = ff_q_pvs_factor_targetleftnegative * S ((S (d*e)) * dst_negative_scale_factor_targetleft) + (dst_negative_factor_targetleft))) /\ (exists ge_balance_positive_factor_targetleftvalue ge_balance_negative_factor_targetleftvalue. (((((dc_left_factor_target) = 2 * (ge_balance_positive_factor_targetleftvalue) /\ (ge_balance_negative_factor_targetleftvalue) = 0) \/ exists ge_signed_half_factor_targetleftvaluedecode. (((dc_left_factor_target) = 2 * ge_signed_half_factor_targetleftvaluedecode + 1 /\ (ge_balance_positive_factor_targetleftvalue) = 0) /\ (ge_balance_negative_factor_targetleftvalue) = S ge_signed_half_factor_targetleftvaluedecode))) /\ ((dst_positive_factor_targetleft) + ge_balance_negative_factor_targetleftvalue = (dst_negative_factor_targetleft) + ge_balance_positive_factor_targetleftvalue))))))))) /\ (((exists dst_positive_code_factor_targetright dst_positive_scale_factor_targetright dst_negative_code_factor_targetright dst_negative_scale_factor_targetright dst_positive_factor_targetright dst_negative_factor_targetright. (((G) = (((((dst_positive_code_factor_targetright) + (dst_positive_scale_factor_targetright)) * S ((dst_positive_code_factor_targetright) + (dst_positive_scale_factor_targetright)) + ((dst_positive_scale_factor_targetright) + (dst_positive_scale_factor_targetright))) + (((dst_negative_code_factor_targetright) + (dst_negative_scale_factor_targetright)) * S ((dst_negative_code_factor_targetright) + (dst_negative_scale_factor_targetright)) + ((dst_negative_scale_factor_targetright) + (dst_negative_scale_factor_targetright)))) * S ((((dst_positive_code_factor_targetright) + (dst_positive_scale_factor_targetright)) * S ((dst_positive_code_factor_targetright) + (dst_positive_scale_factor_targetright)) + ((dst_positive_scale_factor_targetright) + (dst_positive_scale_factor_targetright))) + (((dst_negative_code_factor_targetright) + (dst_negative_scale_factor_targetright)) * S ((dst_negative_code_factor_targetright) + (dst_negative_scale_factor_targetright)) + ((dst_negative_scale_factor_targetright) + (dst_negative_scale_factor_targetright)))) + ((((dst_negative_code_factor_targetright) + (dst_negative_scale_factor_targetright)) * S ((dst_negative_code_factor_targetright) + (dst_negative_scale_factor_targetright)) + ((dst_negative_scale_factor_targetright) + (dst_negative_scale_factor_targetright))) + (((dst_negative_code_factor_targetright) + (dst_negative_scale_factor_targetright)) * S ((dst_negative_code_factor_targetright) + (dst_negative_scale_factor_targetright)) + ((dst_negative_scale_factor_targetright) + (dst_negative_scale_factor_targetright)))))) /\ (((((exists ff_h_pvs_factor_targetrightpositive. ff_h_pvs_factor_targetrightpositive + S (dst_positive_factor_targetright) = S ((S (dc_quotient_factor_target)) * dst_positive_scale_factor_targetright)) /\ exists ff_q_pvs_factor_targetrightpositive. dst_positive_code_factor_targetright = ff_q_pvs_factor_targetrightpositive * S ((S (dc_quotient_factor_target)) * dst_positive_scale_factor_targetright) + (dst_positive_factor_targetright))) /\ (((((exists ff_h_pvs_factor_targetrightnegative. ff_h_pvs_factor_targetrightnegative + S (dst_negative_factor_targetright) = S ((S (dc_quotient_factor_target)) * dst_negative_scale_factor_targetright)) /\ exists ff_q_pvs_factor_targetrightnegative. dst_negative_code_factor_targetright = ff_q_pvs_factor_targetrightnegative * S ((S (dc_quotient_factor_target)) * dst_negative_scale_factor_targetright) + (dst_negative_factor_targetright))) /\ (exists ge_balance_positive_factor_targetrightvalue ge_balance_negative_factor_targetrightvalue. (((((dc_right_factor_target) = 2 * (ge_balance_positive_factor_targetrightvalue) /\ (ge_balance_negative_factor_targetrightvalue) = 0) \/ exists ge_signed_half_factor_targetrightvaluedecode. (((dc_right_factor_target) = 2 * ge_signed_half_factor_targetrightvaluedecode + 1 /\ (ge_balance_positive_factor_targetrightvalue) = 0) /\ (ge_balance_negative_factor_targetrightvalue) = S ge_signed_half_factor_targetrightvaluedecode))) /\ ((dst_positive_factor_targetright) + ge_balance_negative_factor_targetrightvalue = (dst_negative_factor_targetright) + ge_balance_positive_factor_targetrightvalue))))))))) /\ (exists sto_ap_factor_targetproduct sto_an_factor_targetproduct sto_bp_factor_targetproduct sto_bn_factor_targetproduct sto_cp_factor_targetproduct sto_cn_factor_targetproduct. (((((dc_left_factor_target) = 2 * (sto_ap_factor_targetproduct) /\ (sto_an_factor_targetproduct) = 0) \/ exists ge_signed_half_factor_targetproductleft. (((dc_left_factor_target) = 2 * ge_signed_half_factor_targetproductleft + 1 /\ (sto_ap_factor_targetproduct) = 0) /\ (sto_an_factor_targetproduct) = S ge_signed_half_factor_targetproductleft))) /\ ((((((dc_right_factor_target) = 2 * (sto_bp_factor_targetproduct) /\ (sto_bn_factor_targetproduct) = 0) \/ exists ge_signed_half_factor_targetproductright. (((dc_right_factor_target) = 2 * ge_signed_half_factor_targetproductright + 1 /\ (sto_bp_factor_targetproduct) = 0) /\ (sto_bn_factor_targetproduct) = S ge_signed_half_factor_targetproductright))) /\ ((((((total) = 2 * (sto_cp_factor_targetproduct) /\ (sto_cn_factor_targetproduct) = 0) \/ exists ge_signed_half_factor_targetproductoutput. (((total) = 2 * ge_signed_half_factor_targetproductoutput + 1 /\ (sto_cp_factor_targetproduct) = 0) /\ (sto_cn_factor_targetproduct) = S ge_signed_half_factor_targetproductoutput))) /\ ((sto_ap_factor_targetproduct * sto_bp_factor_targetproduct + sto_an_factor_targetproduct * sto_bn_factor_targetproduct) + sto_cn_factor_targetproduct = (sto_ap_factor_targetproduct * sto_bn_factor_targetproduct + sto_an_factor_targetproduct * sto_bp_factor_targetproduct) + sto_cp_factor_targetproduct))))))))))))))) \/ ((((d*e)=0 \/ ~(exists pvs_factor_factor_targetnondivisor. (m*n) = (d*e) * pvs_factor_factor_targetnondivisor)) /\ ((total)=0)))) -> (exists sto_ap_factor_result sto_an_factor_result sto_bp_factor_result sto_bn_factor_result sto_cp_factor_result sto_cn_factor_result. (((((left) = 2 * (sto_ap_factor_result) /\ (sto_an_factor_result) = 0) \/ exists ge_signed_half_factor_resultleft. (((left) = 2 * ge_signed_half_factor_resultleft + 1 /\ (sto_ap_factor_result) = 0) /\ (sto_an_factor_result) = S ge_signed_half_factor_resultleft))) /\ ((((((right) = 2 * (sto_bp_factor_result) /\ (sto_bn_factor_result) = 0) \/ exists ge_signed_half_factor_resultright. (((right) = 2 * ge_signed_half_factor_resultright + 1 /\ (sto_bp_factor_result) = 0) /\ (sto_bn_factor_result) = S ge_signed_half_factor_resultright))) /\ ((((((total) = 2 * (sto_cp_factor_result) /\ (sto_cn_factor_result) = 0) \/ exists ge_signed_half_factor_resultoutput. (((total) = 2 * ge_signed_half_factor_resultoutput + 1 /\ (sto_cp_factor_result) = 0) /\ (sto_cn_factor_result) = S ge_signed_half_factor_resultoutput))) /\ ((sto_ap_factor_result * sto_bp_factor_result + sto_an_factor_result * sto_bn_factor_result) + sto_cn_factor_result = (sto_ap_factor_result * sto_bn_factor_result + sto_an_factor_result * sto_bp_factor_result) + sto_cp_factor_result)))))))

Constructive proof overview

Generated structural guide

On a genuine coprime divisor pair, construct positive cofactors and six signed lookups, apply both bounded multiplicative laws, and factor the actual target summand.

The unchanged tactic script uses 8 declared prerequisites and contains 215 exact native proof lines.

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

Proof neighborhood

Direct dependencies

MX0012 coprime_divisor_factor_pair_cofactors mul_ne_zero Stable theorem; checked-use authorized le_trans Stable theorem; checked-use authorized divisor_le_nonzero Stable theorem; checked-use authorized mul_comm Stable theorem; checked-use authorized signed_table_lookup_any Alpha theorem; checked-use authorized MX004C signed_mul_four_factor_interchange dirichlet_convolution_entry_quotient_product Alpha 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

215 script commands · 36 reading checkpoints · 11 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 (2)

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–10

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

  1. L1
    intro N
  2. L2
    intro F
  3. L3
    intro G
  4. L4
    intro m
  5. L5
    intro n
  6. L6
    intro d
  7. L7
    intro e
  8. L8
    intro left
  9. L9
    intro right
  10. L10
    intro total
02Fix variables and assumptionsL11–20

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

  1. L11
    intro hF
  2. L12
    intro hG
  3. L13
    intro hm
  4. L14
    intro hn
  5. L15
    intro hb
  6. L16
    intro hc
  7. L17
    intro hp
  8. L18
    intro hl
  9. L19
    intro hr
  10. L20
    intro ht
03Separate the logical casesL21–30

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

  1. L21
    cases hF
  2. L22
    cases hF_right
  3. L23
    cases hF_right_right
  4. L24
    cases hG
  5. L25
    cases hG_right
  6. L26
    cases hG_right_right
  7. L27
    cases hp
  8. L28
    cases hp_right
  9. L29
    cases hp_right_right
  10. L30
    cases hp_right_right_right
04Establish hqL31–40

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply coprime divisor factor pair cofactors.

  1. L31
    have hq : ∃ u. ∃ v. m = d · u ∧ (n = e · v ∧ (¬u = 0 ∧ (¬v = 0 ∧ (Le(u,m) ∧ (Le(v,n) ∧ (Coprime(d,e) ∧ (Coprime(d,v) ∧ (Coprime(u,e) ∧ (Coprime(u,v) ∧ m · n = d · e · (u · v))))))))))Definitions: LeCoprime
  2. L32
    specialize coprime_divisor_factor_pair_cofactors (m)
  3. L33
    specialize coprime_divisor_factor_pair_cofactors (n)
  4. L34
    specialize coprime_divisor_factor_pair_cofactors (d*e)
  5. L35
    specialize coprime_divisor_factor_pair_cofactors (d)
  6. L36
    specialize coprime_divisor_factor_pair_cofactors (e)
  7. L37
    apply coprime_divisor_factor_pair_cofactors
  8. L38
    exact hm
  9. L39
    exact hn
  10. L40
    exact hc
05Use earlier factsL41–41

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

  1. L41
    exact hp
06Separate the logical casesL42–51

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

  1. L42
    cases hq
  2. L43
    cases hq_witness
  3. L44
    cases hq_witness_witness
  4. L45
    cases hq_witness_witness_right
  5. L46
    cases hq_witness_witness_right_right
  6. L47
    cases hq_witness_witness_right_right_right
  7. L48
    cases hq_witness_witness_right_right_right_right
  8. L49
    cases hq_witness_witness_right_right_right_right_right
  9. L50
    cases hq_witness_witness_right_right_right_right_right_right
  10. L51
    cases hq_witness_witness_right_right_right_right_right_right_right
07Separate the logical casesL52–53

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

  1. L52
    cases hq_witness_witness_right_right_right_right_right_right_right_right
  2. L53
    cases hq_witness_witness_right_right_right_right_right_right_right_right_right
08Establish hmnL54–61

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

  1. L54
    have hmn : ~(m*n=0)
  2. L55
    intro hz
  3. L56
    specialize mul_ne_zero (m)
  4. L57
    specialize mul_ne_zero (n)
  5. L58
    apply mul_ne_zero
  6. L59
    exact hm
  7. L60
    exact hn
  8. L61
    exact hz
09Establish hdeL62–69

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

  1. L62
    have hde : ~(d*e=0)
  2. L63
    intro hz
  3. L64
    specialize mul_ne_zero (d)
  4. L65
    specialize mul_ne_zero (e)
  5. L66
    apply mul_ne_zero
  6. L67
    exact hp_left
  7. L68
    exact hp_right_left
  8. L69
    exact hz
10Establish hdbL70–78

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

  1. L70
    have hdb : exists pvs_le_gap_factor_divisor_bound. pvs_le_gap_factor_divisor_bound + (d*e) = (N)
  2. L71
    specialize le_trans (d*e)
  3. L72
    specialize le_trans (m*n)
  4. L73
    specialize le_trans (N)
  5. L74
    apply le_trans
  6. L75
    specialize divisor_le_nonzero (d*e)
  7. L76
    specialize divisor_le_nonzero (m*n)
  8. L77
    apply divisor_le_nonzero
  9. L78
    exact hmn
11Construct an explicit witnessL79–79

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

  1. L79
    exists x*x1
12Use earlier factsL80–81

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

  1. L80
    exact hq_witness_witness_right_right_right_right_right_right_right_right_right_right
  2. L81
    exact hb
13Establish hqbL82–90

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

  1. L82
    have hqb : exists pvs_le_gap_factor_quotient_bound. pvs_le_gap_factor_quotient_bound + (x*x1) = (N)
  2. L83
    specialize le_trans (x*x1)
  3. L84
    specialize le_trans (m*n)
  4. L85
    specialize le_trans (N)
  5. L86
    apply le_trans
  6. L87
    specialize divisor_le_nonzero (x*x1)
  7. L88
    specialize divisor_le_nonzero (m*n)
  8. L89
    apply divisor_le_nonzero
  9. L90
    exact hmn
14Construct an explicit witnessL91–91

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

  1. L91
    exists d*e
15Calculate and transport equalitiesL92–92

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L92
    trans (d*e)*(x*x1)
16Use earlier factsL93–95

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

  1. L93
    exact hq_witness_witness_right_right_right_right_right_right_right_right_right_right
  2. L94
    apply mul_comm
  3. L95
    exact hb
17Establish hfdL96–101

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

  1. L96
    have hfd : ∃ value. ArithAt(F,d,value)Definitions: ArithAt
  2. L97
    specialize signed_table_lookup_any (N)
  3. L98
    specialize signed_table_lookup_any (F)
  4. L99
    specialize signed_table_lookup_any (d)
  5. L100
    apply signed_table_lookup_any
  6. L101
    exact hF_right_left
18Separate the logical casesL102–102

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

  1. L102
    cases hfd
19Establish hfeL103–108

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

  1. L103
    have hfe : ∃ value. ArithAt(F,e,value)Definitions: ArithAt
  2. L104
    specialize signed_table_lookup_any (N)
  3. L105
    specialize signed_table_lookup_any (F)
  4. L106
    specialize signed_table_lookup_any (e)
  5. L107
    apply signed_table_lookup_any
  6. L108
    exact hF_right_left
20Separate the logical casesL109–109

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

  1. L109
    cases hfe
21Establish hguL110–115

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

  1. L110
    have hgu : ∃ value. ArithAt(G,x,value)Definitions: ArithAt
  2. L111
    specialize signed_table_lookup_any (N)
  3. L112
    specialize signed_table_lookup_any (G)
  4. L113
    specialize signed_table_lookup_any (x)
  5. L114
    apply signed_table_lookup_any
  6. L115
    exact hG_right_left
22Separate the logical casesL116–116

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

  1. L116
    cases hgu
23Establish hgvL117–122

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

  1. L117
    have hgv : ∃ value. ArithAt(G,x1,value)Definitions: ArithAt
  2. L118
    specialize signed_table_lookup_any (N)
  3. L119
    specialize signed_table_lookup_any (G)
  4. L120
    specialize signed_table_lookup_any (x1)
  5. L121
    apply signed_table_lookup_any
  6. L122
    exact hG_right_left
24Separate the logical casesL123–123

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

  1. L123
    cases hgv
25Establish hfdeL124–129

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

  1. L124
    have hfde : ∃ value. ArithAt(F,d · e,value)Definitions: ArithAt
  2. L125
    specialize signed_table_lookup_any (N)
  3. L126
    specialize signed_table_lookup_any (F)
  4. L127
    specialize signed_table_lookup_any (d*e)
  5. L128
    apply signed_table_lookup_any
  6. L129
    exact hF_right_left
26Separate the logical casesL130–130

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

  1. L130
    cases hfde
27Establish hguvL131–136

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

  1. L131
    have hguv : ∃ value. ArithAt(G,x · x1,value)Definitions: ArithAt
  2. L132
    specialize signed_table_lookup_any (N)
  3. L133
    specialize signed_table_lookup_any (G)
  4. L134
    specialize signed_table_lookup_any (x*x1)
  5. L135
    apply signed_table_lookup_any
  6. L136
    exact hG_right_left
28Separate the logical casesL137–137

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

  1. L137
    cases hguv
29Use earlier factsL138–147

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

  1. L138
    specialize signed_mul_four_factor_interchange (x2)
  2. L139
    specialize signed_mul_four_factor_interchange (x4)
  3. L140
    specialize signed_mul_four_factor_interchange (x3)
  4. L141
    specialize signed_mul_four_factor_interchange (x5)
  5. L142
    specialize signed_mul_four_factor_interchange (left)
  6. L143
    specialize signed_mul_four_factor_interchange (right)
  7. L144
    specialize signed_mul_four_factor_interchange (x6)
  8. L145
    specialize signed_mul_four_factor_interchange (x7)
  9. L146
    specialize signed_mul_four_factor_interchange (total)
  10. L147
    apply signed_mul_four_factor_interchange
30Use earlier factsL148–157

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

  1. L148
    specialize dirichlet_convolution_entry_quotient_product (F)
  2. L149
    specialize dirichlet_convolution_entry_quotient_product (G)
  3. L150
    specialize dirichlet_convolution_entry_quotient_product (m)
  4. L151
    specialize dirichlet_convolution_entry_quotient_product (d)
  5. L152
    specialize dirichlet_convolution_entry_quotient_product (x)
  6. L153
    specialize dirichlet_convolution_entry_quotient_product (x2)
  7. L154
    specialize dirichlet_convolution_entry_quotient_product (x4)
  8. L155
    specialize dirichlet_convolution_entry_quotient_product (left)
  9. L156
    apply dirichlet_convolution_entry_quotient_product
  10. L157
    exact hp_left
31Use earlier factsL158–167

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

  1. L158
    exact hq_witness_witness_left
  2. L159
    exact hfd_witness
  3. L160
    exact hgu_witness
  4. L161
    exact hl
  5. L162
    specialize dirichlet_convolution_entry_quotient_product (F)
  6. L163
    specialize dirichlet_convolution_entry_quotient_product (G)
  7. L164
    specialize dirichlet_convolution_entry_quotient_product (n)
  8. L165
    specialize dirichlet_convolution_entry_quotient_product (e)
  9. L166
    specialize dirichlet_convolution_entry_quotient_product (x1)
  10. L167
    specialize dirichlet_convolution_entry_quotient_product (x3)
32Use earlier factsL168–177

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

  1. L168
    specialize dirichlet_convolution_entry_quotient_product (x5)
  2. L169
    specialize dirichlet_convolution_entry_quotient_product (right)
  3. L170
    apply dirichlet_convolution_entry_quotient_product
  4. L171
    exact hp_right_left
  5. L172
    exact hq_witness_witness_right_left
  6. L173
    exact hfe_witness
  7. L174
    exact hgv_witness
  8. L175
    exact hr
  9. L176
    specialize hF_right_right_right (d)
  10. L177
    specialize hF_right_right_right (e)
33Use earlier factsL178–187

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

  1. L178
    specialize hF_right_right_right (x2)
  2. L179
    specialize hF_right_right_right (x3)
  3. L180
    specialize hF_right_right_right (x6)
  4. L181
    apply hF_right_right_right
  5. L182
    exact hp_left
  6. L183
    exact hp_right_left
  7. L184
    exact hdb
  8. L185
    exact hq_witness_witness_right_right_right_right_right_right_left
  9. L186
    exact hfd_witness
  10. L187
    exact hfe_witness
34Use earlier factsL188–197

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

  1. L188
    exact hfde_witness
  2. L189
    specialize hG_right_right_right (x)
  3. L190
    specialize hG_right_right_right (x1)
  4. L191
    specialize hG_right_right_right (x4)
  5. L192
    specialize hG_right_right_right (x5)
  6. L193
    specialize hG_right_right_right (x7)
  7. L194
    apply hG_right_right_right
  8. L195
    exact hq_witness_witness_right_right_left
  9. L196
    exact hq_witness_witness_right_right_right_left
  10. L197
    exact hqb
35Use earlier factsL198–207

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

  1. L198
    exact hq_witness_witness_right_right_right_right_right_right_right_right_right_left
  2. L199
    exact hgu_witness
  3. L200
    exact hgv_witness
  4. L201
    exact hguv_witness
  5. L202
    specialize dirichlet_convolution_entry_quotient_product (F)
  6. L203
    specialize dirichlet_convolution_entry_quotient_product (G)
  7. L204
    specialize dirichlet_convolution_entry_quotient_product (m*n)
  8. L205
    specialize dirichlet_convolution_entry_quotient_product (d*e)
  9. L206
    specialize dirichlet_convolution_entry_quotient_product (x*x1)
  10. L207
    specialize dirichlet_convolution_entry_quotient_product (x6)
36Use earlier factsL208–215

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

  1. L208
    specialize dirichlet_convolution_entry_quotient_product (x7)
  2. L209
    specialize dirichlet_convolution_entry_quotient_product (total)
  3. L210
    apply dirichlet_convolution_entry_quotient_product
  4. L211
    exact hde
  5. L212
    exact hq_witness_witness_right_right_right_right_right_right_right_right_right_right
  6. L213
    exact hfde_witness
  7. L214
    exact hguv_witness
  8. L215
    exact ht

Library-wide reading audit

Original exact command ledger · 215 lines
  1. 0001intro N
  2. 0002intro F
  3. 0003intro G
  4. 0004intro m
  5. 0005intro n
  6. 0006intro d
  7. 0007intro e
  8. 0008intro left
  9. 0009intro right
  10. 0010intro total
  11. 0011intro hF
  12. 0012intro hG
  13. 0013intro hm
  14. 0014intro hn
  15. 0015intro hb
  16. 0016intro hc
  17. 0017intro hp
  18. 0018intro hl
  19. 0019intro hr
  20. 0020intro ht
  21. 0021cases hF
  22. 0022cases hF_right
  23. 0023cases hF_right_right
  24. 0024cases hG
  25. 0025cases hG_right
  26. 0026cases hG_right_right
  27. 0027cases hp
  28. 0028cases hp_right
  29. 0029cases hp_right_right
  30. 0030cases hp_right_right_right
  31. 0031have hq : exists u v. ((((m)=(d)*(u)) /\ ((((n)=(e)*(v)) /\ (((~((u)=0)) /\ (((~((v)=0)) /\ (((exists pvs_le_gap_factor_cofactorsubound. pvs_le_gap_factor_cofactorsubound + (u) = (m)) /\ (((exists pvs_le_gap_factor_cofactorsvbound. pvs_le_gap_factor_cofactorsvbound + (v) = (n)) /\ (((forall sfd_common_divisor_factor_cofactorsab. (exists pvs_factor_factor_cofactorsableft. (d) = (sfd_common_divisor_factor_cofactorsab) * pvs_factor_factor_cofactorsableft) -> (exists pvs_factor_factor_cofactorsabright. (e) = (sfd_common_divisor_factor_cofactorsab) * pvs_factor_factor_cofactorsabright) -> sfd_common_divisor_factor_cofactorsab = 1) /\ (((forall sfd_common_divisor_factor_cofactorsav. (exists pvs_factor_factor_cofactorsavleft. (d) = (sfd_common_divisor_factor_cofactorsav) * pvs_factor_factor_cofactorsavleft) -> (exists pvs_factor_factor_cofactorsavright. (v) = (sfd_common_divisor_factor_cofactorsav) * pvs_factor_factor_cofactorsavright) -> sfd_common_divisor_factor_cofactorsav = 1) /\ (((forall sfd_common_divisor_factor_cofactorsub. (exists pvs_factor_factor_cofactorsubleft. (u) = (sfd_common_divisor_factor_cofactorsub) * pvs_factor_factor_cofactorsubleft) -> (exists pvs_factor_factor_cofactorsubright. (e) = (sfd_common_divisor_factor_cofactorsub) * pvs_factor_factor_cofactorsubright) -> sfd_common_divisor_factor_cofactorsub = 1) /\ (((forall sfd_common_divisor_factor_cofactorsuv. (exists pvs_factor_factor_cofactorsuvleft. (u) = (sfd_common_divisor_factor_cofactorsuv) * pvs_factor_factor_cofactorsuvleft) -> (exists pvs_factor_factor_cofactorsuvright. (v) = (sfd_common_divisor_factor_cofactorsuv) * pvs_factor_factor_cofactorsuvright) -> sfd_common_divisor_factor_cofactorsuv = 1) /\ ((m)*(n)=(d*e)*((u)*(v)))))))))))))))))))))))
  32. 0032specialize coprime_divisor_factor_pair_cofactors (m)
  33. 0033specialize coprime_divisor_factor_pair_cofactors (n)
  34. 0034specialize coprime_divisor_factor_pair_cofactors (d*e)
  35. 0035specialize coprime_divisor_factor_pair_cofactors (d)
  36. 0036specialize coprime_divisor_factor_pair_cofactors (e)
  37. 0037apply coprime_divisor_factor_pair_cofactors
  38. 0038exact hm
  39. 0039exact hn
  40. 0040exact hc
  41. 0041exact hp
  42. 0042cases hq
  43. 0043cases hq_witness
  44. 0044cases hq_witness_witness
  45. 0045cases hq_witness_witness_right
  46. 0046cases hq_witness_witness_right_right
  47. 0047cases hq_witness_witness_right_right_right
  48. 0048cases hq_witness_witness_right_right_right_right
  49. 0049cases hq_witness_witness_right_right_right_right_right
  50. 0050cases hq_witness_witness_right_right_right_right_right_right
  51. 0051cases hq_witness_witness_right_right_right_right_right_right_right
  52. 0052cases hq_witness_witness_right_right_right_right_right_right_right_right
  53. 0053cases hq_witness_witness_right_right_right_right_right_right_right_right_right
  54. 0054have hmn : ~(m*n=0)
  55. 0055intro hz
  56. 0056specialize mul_ne_zero (m)
  57. 0057specialize mul_ne_zero (n)
  58. 0058apply mul_ne_zero
  59. 0059exact hm
  60. 0060exact hn
  61. 0061exact hz
  62. 0062have hde : ~(d*e=0)
  63. 0063intro hz
  64. 0064specialize mul_ne_zero (d)
  65. 0065specialize mul_ne_zero (e)
  66. 0066apply mul_ne_zero
  67. 0067exact hp_left
  68. 0068exact hp_right_left
  69. 0069exact hz
  70. 0070have hdb : exists pvs_le_gap_factor_divisor_bound. pvs_le_gap_factor_divisor_bound + (d*e) = (N)
  71. 0071specialize le_trans (d*e)
  72. 0072specialize le_trans (m*n)
  73. 0073specialize le_trans (N)
  74. 0074apply le_trans
  75. 0075specialize divisor_le_nonzero (d*e)
  76. 0076specialize divisor_le_nonzero (m*n)
  77. 0077apply divisor_le_nonzero
  78. 0078exact hmn
  79. 0079exists x*x1
  80. 0080exact hq_witness_witness_right_right_right_right_right_right_right_right_right_right
  81. 0081exact hb
  82. 0082have hqb : exists pvs_le_gap_factor_quotient_bound. pvs_le_gap_factor_quotient_bound + (x*x1) = (N)
  83. 0083specialize le_trans (x*x1)
  84. 0084specialize le_trans (m*n)
  85. 0085specialize le_trans (N)
  86. 0086apply le_trans
  87. 0087specialize divisor_le_nonzero (x*x1)
  88. 0088specialize divisor_le_nonzero (m*n)
  89. 0089apply divisor_le_nonzero
  90. 0090exact hmn
  91. 0091exists d*e
  92. 0092trans (d*e)*(x*x1)
  93. 0093exact hq_witness_witness_right_right_right_right_right_right_right_right_right_right
  94. 0094apply mul_comm
  95. 0095exact hb
  96. 0096have hfd : exists value. (exists dst_positive_code_hfdactual dst_positive_scale_hfdactual dst_negative_code_hfdactual dst_negative_scale_hfdactual dst_positive_hfdactual dst_negative_hfdactual. (((F) = (((((dst_positive_code_hfdactual) + (dst_positive_scale_hfdactual)) * S ((dst_positive_code_hfdactual) + (dst_positive_scale_hfdactual)) + ((dst_positive_scale_hfdactual) + (dst_positive_scale_hfdactual))) + (((dst_negative_code_hfdactual) + (dst_negative_scale_hfdactual)) * S ((dst_negative_code_hfdactual) + (dst_negative_scale_hfdactual)) + ((dst_negative_scale_hfdactual) + (dst_negative_scale_hfdactual)))) * S ((((dst_positive_code_hfdactual) + (dst_positive_scale_hfdactual)) * S ((dst_positive_code_hfdactual) + (dst_positive_scale_hfdactual)) + ((dst_positive_scale_hfdactual) + (dst_positive_scale_hfdactual))) + (((dst_negative_code_hfdactual) + (dst_negative_scale_hfdactual)) * S ((dst_negative_code_hfdactual) + (dst_negative_scale_hfdactual)) + ((dst_negative_scale_hfdactual) + (dst_negative_scale_hfdactual)))) + ((((dst_negative_code_hfdactual) + (dst_negative_scale_hfdactual)) * S ((dst_negative_code_hfdactual) + (dst_negative_scale_hfdactual)) + ((dst_negative_scale_hfdactual) + (dst_negative_scale_hfdactual))) + (((dst_negative_code_hfdactual) + (dst_negative_scale_hfdactual)) * S ((dst_negative_code_hfdactual) + (dst_negative_scale_hfdactual)) + ((dst_negative_scale_hfdactual) + (dst_negative_scale_hfdactual)))))) /\ (((((exists ff_h_pvs_hfdactualpositive. ff_h_pvs_hfdactualpositive + S (dst_positive_hfdactual) = S ((S (d)) * dst_positive_scale_hfdactual)) /\ exists ff_q_pvs_hfdactualpositive. dst_positive_code_hfdactual = ff_q_pvs_hfdactualpositive * S ((S (d)) * dst_positive_scale_hfdactual) + (dst_positive_hfdactual))) /\ (((((exists ff_h_pvs_hfdactualnegative. ff_h_pvs_hfdactualnegative + S (dst_negative_hfdactual) = S ((S (d)) * dst_negative_scale_hfdactual)) /\ exists ff_q_pvs_hfdactualnegative. dst_negative_code_hfdactual = ff_q_pvs_hfdactualnegative * S ((S (d)) * dst_negative_scale_hfdactual) + (dst_negative_hfdactual))) /\ (exists ge_balance_positive_hfdactualvalue ge_balance_negative_hfdactualvalue. (((((value) = 2 * (ge_balance_positive_hfdactualvalue) /\ (ge_balance_negative_hfdactualvalue) = 0) \/ exists ge_signed_half_hfdactualvaluedecode. (((value) = 2 * ge_signed_half_hfdactualvaluedecode + 1 /\ (ge_balance_positive_hfdactualvalue) = 0) /\ (ge_balance_negative_hfdactualvalue) = S ge_signed_half_hfdactualvaluedecode))) /\ ((dst_positive_hfdactual) + ge_balance_negative_hfdactualvalue = (dst_negative_hfdactual) + ge_balance_positive_hfdactualvalue)))))))))
  97. 0097specialize signed_table_lookup_any (N)
  98. 0098specialize signed_table_lookup_any (F)
  99. 0099specialize signed_table_lookup_any (d)
  100. 0100apply signed_table_lookup_any
  101. 0101exact hF_right_left
  102. 0102cases hfd
  103. 0103have hfe : exists value. (exists dst_positive_code_hfeactual dst_positive_scale_hfeactual dst_negative_code_hfeactual dst_negative_scale_hfeactual dst_positive_hfeactual dst_negative_hfeactual. (((F) = (((((dst_positive_code_hfeactual) + (dst_positive_scale_hfeactual)) * S ((dst_positive_code_hfeactual) + (dst_positive_scale_hfeactual)) + ((dst_positive_scale_hfeactual) + (dst_positive_scale_hfeactual))) + (((dst_negative_code_hfeactual) + (dst_negative_scale_hfeactual)) * S ((dst_negative_code_hfeactual) + (dst_negative_scale_hfeactual)) + ((dst_negative_scale_hfeactual) + (dst_negative_scale_hfeactual)))) * S ((((dst_positive_code_hfeactual) + (dst_positive_scale_hfeactual)) * S ((dst_positive_code_hfeactual) + (dst_positive_scale_hfeactual)) + ((dst_positive_scale_hfeactual) + (dst_positive_scale_hfeactual))) + (((dst_negative_code_hfeactual) + (dst_negative_scale_hfeactual)) * S ((dst_negative_code_hfeactual) + (dst_negative_scale_hfeactual)) + ((dst_negative_scale_hfeactual) + (dst_negative_scale_hfeactual)))) + ((((dst_negative_code_hfeactual) + (dst_negative_scale_hfeactual)) * S ((dst_negative_code_hfeactual) + (dst_negative_scale_hfeactual)) + ((dst_negative_scale_hfeactual) + (dst_negative_scale_hfeactual))) + (((dst_negative_code_hfeactual) + (dst_negative_scale_hfeactual)) * S ((dst_negative_code_hfeactual) + (dst_negative_scale_hfeactual)) + ((dst_negative_scale_hfeactual) + (dst_negative_scale_hfeactual)))))) /\ (((((exists ff_h_pvs_hfeactualpositive. ff_h_pvs_hfeactualpositive + S (dst_positive_hfeactual) = S ((S (e)) * dst_positive_scale_hfeactual)) /\ exists ff_q_pvs_hfeactualpositive. dst_positive_code_hfeactual = ff_q_pvs_hfeactualpositive * S ((S (e)) * dst_positive_scale_hfeactual) + (dst_positive_hfeactual))) /\ (((((exists ff_h_pvs_hfeactualnegative. ff_h_pvs_hfeactualnegative + S (dst_negative_hfeactual) = S ((S (e)) * dst_negative_scale_hfeactual)) /\ exists ff_q_pvs_hfeactualnegative. dst_negative_code_hfeactual = ff_q_pvs_hfeactualnegative * S ((S (e)) * dst_negative_scale_hfeactual) + (dst_negative_hfeactual))) /\ (exists ge_balance_positive_hfeactualvalue ge_balance_negative_hfeactualvalue. (((((value) = 2 * (ge_balance_positive_hfeactualvalue) /\ (ge_balance_negative_hfeactualvalue) = 0) \/ exists ge_signed_half_hfeactualvaluedecode. (((value) = 2 * ge_signed_half_hfeactualvaluedecode + 1 /\ (ge_balance_positive_hfeactualvalue) = 0) /\ (ge_balance_negative_hfeactualvalue) = S ge_signed_half_hfeactualvaluedecode))) /\ ((dst_positive_hfeactual) + ge_balance_negative_hfeactualvalue = (dst_negative_hfeactual) + ge_balance_positive_hfeactualvalue)))))))))
  104. 0104specialize signed_table_lookup_any (N)
  105. 0105specialize signed_table_lookup_any (F)
  106. 0106specialize signed_table_lookup_any (e)
  107. 0107apply signed_table_lookup_any
  108. 0108exact hF_right_left
  109. 0109cases hfe
  110. 0110have hgu : exists value. (exists dst_positive_code_hguactual dst_positive_scale_hguactual dst_negative_code_hguactual dst_negative_scale_hguactual dst_positive_hguactual dst_negative_hguactual. (((G) = (((((dst_positive_code_hguactual) + (dst_positive_scale_hguactual)) * S ((dst_positive_code_hguactual) + (dst_positive_scale_hguactual)) + ((dst_positive_scale_hguactual) + (dst_positive_scale_hguactual))) + (((dst_negative_code_hguactual) + (dst_negative_scale_hguactual)) * S ((dst_negative_code_hguactual) + (dst_negative_scale_hguactual)) + ((dst_negative_scale_hguactual) + (dst_negative_scale_hguactual)))) * S ((((dst_positive_code_hguactual) + (dst_positive_scale_hguactual)) * S ((dst_positive_code_hguactual) + (dst_positive_scale_hguactual)) + ((dst_positive_scale_hguactual) + (dst_positive_scale_hguactual))) + (((dst_negative_code_hguactual) + (dst_negative_scale_hguactual)) * S ((dst_negative_code_hguactual) + (dst_negative_scale_hguactual)) + ((dst_negative_scale_hguactual) + (dst_negative_scale_hguactual)))) + ((((dst_negative_code_hguactual) + (dst_negative_scale_hguactual)) * S ((dst_negative_code_hguactual) + (dst_negative_scale_hguactual)) + ((dst_negative_scale_hguactual) + (dst_negative_scale_hguactual))) + (((dst_negative_code_hguactual) + (dst_negative_scale_hguactual)) * S ((dst_negative_code_hguactual) + (dst_negative_scale_hguactual)) + ((dst_negative_scale_hguactual) + (dst_negative_scale_hguactual)))))) /\ (((((exists ff_h_pvs_hguactualpositive. ff_h_pvs_hguactualpositive + S (dst_positive_hguactual) = S ((S (x)) * dst_positive_scale_hguactual)) /\ exists ff_q_pvs_hguactualpositive. dst_positive_code_hguactual = ff_q_pvs_hguactualpositive * S ((S (x)) * dst_positive_scale_hguactual) + (dst_positive_hguactual))) /\ (((((exists ff_h_pvs_hguactualnegative. ff_h_pvs_hguactualnegative + S (dst_negative_hguactual) = S ((S (x)) * dst_negative_scale_hguactual)) /\ exists ff_q_pvs_hguactualnegative. dst_negative_code_hguactual = ff_q_pvs_hguactualnegative * S ((S (x)) * dst_negative_scale_hguactual) + (dst_negative_hguactual))) /\ (exists ge_balance_positive_hguactualvalue ge_balance_negative_hguactualvalue. (((((value) = 2 * (ge_balance_positive_hguactualvalue) /\ (ge_balance_negative_hguactualvalue) = 0) \/ exists ge_signed_half_hguactualvaluedecode. (((value) = 2 * ge_signed_half_hguactualvaluedecode + 1 /\ (ge_balance_positive_hguactualvalue) = 0) /\ (ge_balance_negative_hguactualvalue) = S ge_signed_half_hguactualvaluedecode))) /\ ((dst_positive_hguactual) + ge_balance_negative_hguactualvalue = (dst_negative_hguactual) + ge_balance_positive_hguactualvalue)))))))))
  111. 0111specialize signed_table_lookup_any (N)
  112. 0112specialize signed_table_lookup_any (G)
  113. 0113specialize signed_table_lookup_any (x)
  114. 0114apply signed_table_lookup_any
  115. 0115exact hG_right_left
  116. 0116cases hgu
  117. 0117have hgv : exists value. (exists dst_positive_code_hgvactual dst_positive_scale_hgvactual dst_negative_code_hgvactual dst_negative_scale_hgvactual dst_positive_hgvactual dst_negative_hgvactual. (((G) = (((((dst_positive_code_hgvactual) + (dst_positive_scale_hgvactual)) * S ((dst_positive_code_hgvactual) + (dst_positive_scale_hgvactual)) + ((dst_positive_scale_hgvactual) + (dst_positive_scale_hgvactual))) + (((dst_negative_code_hgvactual) + (dst_negative_scale_hgvactual)) * S ((dst_negative_code_hgvactual) + (dst_negative_scale_hgvactual)) + ((dst_negative_scale_hgvactual) + (dst_negative_scale_hgvactual)))) * S ((((dst_positive_code_hgvactual) + (dst_positive_scale_hgvactual)) * S ((dst_positive_code_hgvactual) + (dst_positive_scale_hgvactual)) + ((dst_positive_scale_hgvactual) + (dst_positive_scale_hgvactual))) + (((dst_negative_code_hgvactual) + (dst_negative_scale_hgvactual)) * S ((dst_negative_code_hgvactual) + (dst_negative_scale_hgvactual)) + ((dst_negative_scale_hgvactual) + (dst_negative_scale_hgvactual)))) + ((((dst_negative_code_hgvactual) + (dst_negative_scale_hgvactual)) * S ((dst_negative_code_hgvactual) + (dst_negative_scale_hgvactual)) + ((dst_negative_scale_hgvactual) + (dst_negative_scale_hgvactual))) + (((dst_negative_code_hgvactual) + (dst_negative_scale_hgvactual)) * S ((dst_negative_code_hgvactual) + (dst_negative_scale_hgvactual)) + ((dst_negative_scale_hgvactual) + (dst_negative_scale_hgvactual)))))) /\ (((((exists ff_h_pvs_hgvactualpositive. ff_h_pvs_hgvactualpositive + S (dst_positive_hgvactual) = S ((S (x1)) * dst_positive_scale_hgvactual)) /\ exists ff_q_pvs_hgvactualpositive. dst_positive_code_hgvactual = ff_q_pvs_hgvactualpositive * S ((S (x1)) * dst_positive_scale_hgvactual) + (dst_positive_hgvactual))) /\ (((((exists ff_h_pvs_hgvactualnegative. ff_h_pvs_hgvactualnegative + S (dst_negative_hgvactual) = S ((S (x1)) * dst_negative_scale_hgvactual)) /\ exists ff_q_pvs_hgvactualnegative. dst_negative_code_hgvactual = ff_q_pvs_hgvactualnegative * S ((S (x1)) * dst_negative_scale_hgvactual) + (dst_negative_hgvactual))) /\ (exists ge_balance_positive_hgvactualvalue ge_balance_negative_hgvactualvalue. (((((value) = 2 * (ge_balance_positive_hgvactualvalue) /\ (ge_balance_negative_hgvactualvalue) = 0) \/ exists ge_signed_half_hgvactualvaluedecode. (((value) = 2 * ge_signed_half_hgvactualvaluedecode + 1 /\ (ge_balance_positive_hgvactualvalue) = 0) /\ (ge_balance_negative_hgvactualvalue) = S ge_signed_half_hgvactualvaluedecode))) /\ ((dst_positive_hgvactual) + ge_balance_negative_hgvactualvalue = (dst_negative_hgvactual) + ge_balance_positive_hgvactualvalue)))))))))
  118. 0118specialize signed_table_lookup_any (N)
  119. 0119specialize signed_table_lookup_any (G)
  120. 0120specialize signed_table_lookup_any (x1)
  121. 0121apply signed_table_lookup_any
  122. 0122exact hG_right_left
  123. 0123cases hgv
  124. 0124have hfde : exists value. (exists dst_positive_code_hfdeactual dst_positive_scale_hfdeactual dst_negative_code_hfdeactual dst_negative_scale_hfdeactual dst_positive_hfdeactual dst_negative_hfdeactual. (((F) = (((((dst_positive_code_hfdeactual) + (dst_positive_scale_hfdeactual)) * S ((dst_positive_code_hfdeactual) + (dst_positive_scale_hfdeactual)) + ((dst_positive_scale_hfdeactual) + (dst_positive_scale_hfdeactual))) + (((dst_negative_code_hfdeactual) + (dst_negative_scale_hfdeactual)) * S ((dst_negative_code_hfdeactual) + (dst_negative_scale_hfdeactual)) + ((dst_negative_scale_hfdeactual) + (dst_negative_scale_hfdeactual)))) * S ((((dst_positive_code_hfdeactual) + (dst_positive_scale_hfdeactual)) * S ((dst_positive_code_hfdeactual) + (dst_positive_scale_hfdeactual)) + ((dst_positive_scale_hfdeactual) + (dst_positive_scale_hfdeactual))) + (((dst_negative_code_hfdeactual) + (dst_negative_scale_hfdeactual)) * S ((dst_negative_code_hfdeactual) + (dst_negative_scale_hfdeactual)) + ((dst_negative_scale_hfdeactual) + (dst_negative_scale_hfdeactual)))) + ((((dst_negative_code_hfdeactual) + (dst_negative_scale_hfdeactual)) * S ((dst_negative_code_hfdeactual) + (dst_negative_scale_hfdeactual)) + ((dst_negative_scale_hfdeactual) + (dst_negative_scale_hfdeactual))) + (((dst_negative_code_hfdeactual) + (dst_negative_scale_hfdeactual)) * S ((dst_negative_code_hfdeactual) + (dst_negative_scale_hfdeactual)) + ((dst_negative_scale_hfdeactual) + (dst_negative_scale_hfdeactual)))))) /\ (((((exists ff_h_pvs_hfdeactualpositive. ff_h_pvs_hfdeactualpositive + S (dst_positive_hfdeactual) = S ((S (d*e)) * dst_positive_scale_hfdeactual)) /\ exists ff_q_pvs_hfdeactualpositive. dst_positive_code_hfdeactual = ff_q_pvs_hfdeactualpositive * S ((S (d*e)) * dst_positive_scale_hfdeactual) + (dst_positive_hfdeactual))) /\ (((((exists ff_h_pvs_hfdeactualnegative. ff_h_pvs_hfdeactualnegative + S (dst_negative_hfdeactual) = S ((S (d*e)) * dst_negative_scale_hfdeactual)) /\ exists ff_q_pvs_hfdeactualnegative. dst_negative_code_hfdeactual = ff_q_pvs_hfdeactualnegative * S ((S (d*e)) * dst_negative_scale_hfdeactual) + (dst_negative_hfdeactual))) /\ (exists ge_balance_positive_hfdeactualvalue ge_balance_negative_hfdeactualvalue. (((((value) = 2 * (ge_balance_positive_hfdeactualvalue) /\ (ge_balance_negative_hfdeactualvalue) = 0) \/ exists ge_signed_half_hfdeactualvaluedecode. (((value) = 2 * ge_signed_half_hfdeactualvaluedecode + 1 /\ (ge_balance_positive_hfdeactualvalue) = 0) /\ (ge_balance_negative_hfdeactualvalue) = S ge_signed_half_hfdeactualvaluedecode))) /\ ((dst_positive_hfdeactual) + ge_balance_negative_hfdeactualvalue = (dst_negative_hfdeactual) + ge_balance_positive_hfdeactualvalue)))))))))
  125. 0125specialize signed_table_lookup_any (N)
  126. 0126specialize signed_table_lookup_any (F)
  127. 0127specialize signed_table_lookup_any (d*e)
  128. 0128apply signed_table_lookup_any
  129. 0129exact hF_right_left
  130. 0130cases hfde
  131. 0131have hguv : exists value. (exists dst_positive_code_hguvactual dst_positive_scale_hguvactual dst_negative_code_hguvactual dst_negative_scale_hguvactual dst_positive_hguvactual dst_negative_hguvactual. (((G) = (((((dst_positive_code_hguvactual) + (dst_positive_scale_hguvactual)) * S ((dst_positive_code_hguvactual) + (dst_positive_scale_hguvactual)) + ((dst_positive_scale_hguvactual) + (dst_positive_scale_hguvactual))) + (((dst_negative_code_hguvactual) + (dst_negative_scale_hguvactual)) * S ((dst_negative_code_hguvactual) + (dst_negative_scale_hguvactual)) + ((dst_negative_scale_hguvactual) + (dst_negative_scale_hguvactual)))) * S ((((dst_positive_code_hguvactual) + (dst_positive_scale_hguvactual)) * S ((dst_positive_code_hguvactual) + (dst_positive_scale_hguvactual)) + ((dst_positive_scale_hguvactual) + (dst_positive_scale_hguvactual))) + (((dst_negative_code_hguvactual) + (dst_negative_scale_hguvactual)) * S ((dst_negative_code_hguvactual) + (dst_negative_scale_hguvactual)) + ((dst_negative_scale_hguvactual) + (dst_negative_scale_hguvactual)))) + ((((dst_negative_code_hguvactual) + (dst_negative_scale_hguvactual)) * S ((dst_negative_code_hguvactual) + (dst_negative_scale_hguvactual)) + ((dst_negative_scale_hguvactual) + (dst_negative_scale_hguvactual))) + (((dst_negative_code_hguvactual) + (dst_negative_scale_hguvactual)) * S ((dst_negative_code_hguvactual) + (dst_negative_scale_hguvactual)) + ((dst_negative_scale_hguvactual) + (dst_negative_scale_hguvactual)))))) /\ (((((exists ff_h_pvs_hguvactualpositive. ff_h_pvs_hguvactualpositive + S (dst_positive_hguvactual) = S ((S (x*x1)) * dst_positive_scale_hguvactual)) /\ exists ff_q_pvs_hguvactualpositive. dst_positive_code_hguvactual = ff_q_pvs_hguvactualpositive * S ((S (x*x1)) * dst_positive_scale_hguvactual) + (dst_positive_hguvactual))) /\ (((((exists ff_h_pvs_hguvactualnegative. ff_h_pvs_hguvactualnegative + S (dst_negative_hguvactual) = S ((S (x*x1)) * dst_negative_scale_hguvactual)) /\ exists ff_q_pvs_hguvactualnegative. dst_negative_code_hguvactual = ff_q_pvs_hguvactualnegative * S ((S (x*x1)) * dst_negative_scale_hguvactual) + (dst_negative_hguvactual))) /\ (exists ge_balance_positive_hguvactualvalue ge_balance_negative_hguvactualvalue. (((((value) = 2 * (ge_balance_positive_hguvactualvalue) /\ (ge_balance_negative_hguvactualvalue) = 0) \/ exists ge_signed_half_hguvactualvaluedecode. (((value) = 2 * ge_signed_half_hguvactualvaluedecode + 1 /\ (ge_balance_positive_hguvactualvalue) = 0) /\ (ge_balance_negative_hguvactualvalue) = S ge_signed_half_hguvactualvaluedecode))) /\ ((dst_positive_hguvactual) + ge_balance_negative_hguvactualvalue = (dst_negative_hguvactual) + ge_balance_positive_hguvactualvalue)))))))))
  132. 0132specialize signed_table_lookup_any (N)
  133. 0133specialize signed_table_lookup_any (G)
  134. 0134specialize signed_table_lookup_any (x*x1)
  135. 0135apply signed_table_lookup_any
  136. 0136exact hG_right_left
  137. 0137cases hguv
  138. 0138specialize signed_mul_four_factor_interchange (x2)
  139. 0139specialize signed_mul_four_factor_interchange (x4)
  140. 0140specialize signed_mul_four_factor_interchange (x3)
  141. 0141specialize signed_mul_four_factor_interchange (x5)
  142. 0142specialize signed_mul_four_factor_interchange (left)
  143. 0143specialize signed_mul_four_factor_interchange (right)
  144. 0144specialize signed_mul_four_factor_interchange (x6)
  145. 0145specialize signed_mul_four_factor_interchange (x7)
  146. 0146specialize signed_mul_four_factor_interchange (total)
  147. 0147apply signed_mul_four_factor_interchange
  148. 0148specialize dirichlet_convolution_entry_quotient_product (F)
  149. 0149specialize dirichlet_convolution_entry_quotient_product (G)
  150. 0150specialize dirichlet_convolution_entry_quotient_product (m)
  151. 0151specialize dirichlet_convolution_entry_quotient_product (d)
  152. 0152specialize dirichlet_convolution_entry_quotient_product (x)
  153. 0153specialize dirichlet_convolution_entry_quotient_product (x2)
  154. 0154specialize dirichlet_convolution_entry_quotient_product (x4)
  155. 0155specialize dirichlet_convolution_entry_quotient_product (left)
  156. 0156apply dirichlet_convolution_entry_quotient_product
  157. 0157exact hp_left
  158. 0158exact hq_witness_witness_left
  159. 0159exact hfd_witness
  160. 0160exact hgu_witness
  161. 0161exact hl
  162. 0162specialize dirichlet_convolution_entry_quotient_product (F)
  163. 0163specialize dirichlet_convolution_entry_quotient_product (G)
  164. 0164specialize dirichlet_convolution_entry_quotient_product (n)
  165. 0165specialize dirichlet_convolution_entry_quotient_product (e)
  166. 0166specialize dirichlet_convolution_entry_quotient_product (x1)
  167. 0167specialize dirichlet_convolution_entry_quotient_product (x3)
  168. 0168specialize dirichlet_convolution_entry_quotient_product (x5)
  169. 0169specialize dirichlet_convolution_entry_quotient_product (right)
  170. 0170apply dirichlet_convolution_entry_quotient_product
  171. 0171exact hp_right_left
  172. 0172exact hq_witness_witness_right_left
  173. 0173exact hfe_witness
  174. 0174exact hgv_witness
  175. 0175exact hr
  176. 0176specialize hF_right_right_right (d)
  177. 0177specialize hF_right_right_right (e)
  178. 0178specialize hF_right_right_right (x2)
  179. 0179specialize hF_right_right_right (x3)
  180. 0180specialize hF_right_right_right (x6)
  181. 0181apply hF_right_right_right
  182. 0182exact hp_left
  183. 0183exact hp_right_left
  184. 0184exact hdb
  185. 0185exact hq_witness_witness_right_right_right_right_right_right_left
  186. 0186exact hfd_witness
  187. 0187exact hfe_witness
  188. 0188exact hfde_witness
  189. 0189specialize hG_right_right_right (x)
  190. 0190specialize hG_right_right_right (x1)
  191. 0191specialize hG_right_right_right (x4)
  192. 0192specialize hG_right_right_right (x5)
  193. 0193specialize hG_right_right_right (x7)
  194. 0194apply hG_right_right_right
  195. 0195exact hq_witness_witness_right_right_left
  196. 0196exact hq_witness_witness_right_right_right_left
  197. 0197exact hqb
  198. 0198exact hq_witness_witness_right_right_right_right_right_right_right_right_right_left
  199. 0199exact hgu_witness
  200. 0200exact hgv_witness
  201. 0201exact hguv_witness
  202. 0202specialize dirichlet_convolution_entry_quotient_product (F)
  203. 0203specialize dirichlet_convolution_entry_quotient_product (G)
  204. 0204specialize dirichlet_convolution_entry_quotient_product (m*n)
  205. 0205specialize dirichlet_convolution_entry_quotient_product (d*e)
  206. 0206specialize dirichlet_convolution_entry_quotient_product (x*x1)
  207. 0207specialize dirichlet_convolution_entry_quotient_product (x6)
  208. 0208specialize dirichlet_convolution_entry_quotient_product (x7)
  209. 0209specialize dirichlet_convolution_entry_quotient_product (total)
  210. 0210apply dirichlet_convolution_entry_quotient_product
  211. 0211exact hde
  212. 0212exact hq_witness_witness_right_right_right_right_right_right_right_right_right_right
  213. 0213exact hfde_witness
  214. 0214exact hguv_witness
  215. 0215exact ht