GF0063

gaussian_bezout_euclidean_backward

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

Construct the coefficient u-qv and verify the complete Gaussian Bézout back-substitution using actual products, differences, distribution and addition.

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 original first-admission records.

Exact expanded first-order arithmetic statement

forall g a b q r u v. (exists ge_division_product_bezout_euclidean_equation. ((exists ge_first_rp_bezout_euclidean_equationproduct ge_first_rn_bezout_euclidean_equationproduct ge_first_ip_bezout_euclidean_equationproduct ge_first_in_bezout_euclidean_equationproduct ge_second_rp_bezout_euclidean_equationproduct ge_second_rn_bezout_euclidean_equationproduct ge_second_ip_bezout_euclidean_equationproduct ge_second_in_bezout_euclidean_equationproduct. ((exists ge_representation_real_code_bezout_euclidean_equationproductfirst ge_representation_imaginary_code_bezout_euclidean_equationproductfirst. (((b) = ((ge_representation_real_code_bezout_euclidean_equationproductfirst) + (ge_representation_imaginary_code_bezout_euclidean_equationproductfirst)) * S ((ge_representation_real_code_bezout_euclidean_equationproductfirst) + (ge_representation_imaginary_code_bezout_euclidean_equationproductfirst)) + ((ge_representation_imaginary_code_bezout_euclidean_equationproductfirst) + (ge_representation_imaginary_code_bezout_euclidean_equationproductfirst))) /\ ((exists ge_balance_positive_bezout_euclidean_equationproductfirstreal ge_balance_negative_bezout_euclidean_equationproductfirstreal. (((((ge_representation_real_code_bezout_euclidean_equationproductfirst) = 2 * (ge_balance_positive_bezout_euclidean_equationproductfirstreal) /\ (ge_balance_negative_bezout_euclidean_equationproductfirstreal) = 0) \/ exists ge_signed_half_bezout_euclidean_equationproductfirstrealdecode. (((ge_representation_real_code_bezout_euclidean_equationproductfirst) = 2 * ge_signed_half_bezout_euclidean_equationproductfirstrealdecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationproductfirstreal) = 0) /\ (ge_balance_negative_bezout_euclidean_equationproductfirstreal) = S ge_signed_half_bezout_euclidean_equationproductfirstrealdecode))) /\ ((ge_first_rp_bezout_euclidean_equationproduct) + ge_balance_negative_bezout_euclidean_equationproductfirstreal = (ge_first_rn_bezout_euclidean_equationproduct) + ge_balance_positive_bezout_euclidean_equationproductfirstreal))) /\ (exists ge_balance_positive_bezout_euclidean_equationproductfirstimaginary ge_balance_negative_bezout_euclidean_equationproductfirstimaginary. (((((ge_representation_imaginary_code_bezout_euclidean_equationproductfirst) = 2 * (ge_balance_positive_bezout_euclidean_equationproductfirstimaginary) /\ (ge_balance_negative_bezout_euclidean_equationproductfirstimaginary) = 0) \/ exists ge_signed_half_bezout_euclidean_equationproductfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_euclidean_equationproductfirst) = 2 * ge_signed_half_bezout_euclidean_equationproductfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationproductfirstimaginary) = 0) /\ (ge_balance_negative_bezout_euclidean_equationproductfirstimaginary) = S ge_signed_half_bezout_euclidean_equationproductfirstimaginarydecode))) /\ ((ge_first_ip_bezout_euclidean_equationproduct) + ge_balance_negative_bezout_euclidean_equationproductfirstimaginary = (ge_first_in_bezout_euclidean_equationproduct) + ge_balance_positive_bezout_euclidean_equationproductfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_euclidean_equationproductsecond ge_representation_imaginary_code_bezout_euclidean_equationproductsecond. (((q) = ((ge_representation_real_code_bezout_euclidean_equationproductsecond) + (ge_representation_imaginary_code_bezout_euclidean_equationproductsecond)) * S ((ge_representation_real_code_bezout_euclidean_equationproductsecond) + (ge_representation_imaginary_code_bezout_euclidean_equationproductsecond)) + ((ge_representation_imaginary_code_bezout_euclidean_equationproductsecond) + (ge_representation_imaginary_code_bezout_euclidean_equationproductsecond))) /\ ((exists ge_balance_positive_bezout_euclidean_equationproductsecondreal ge_balance_negative_bezout_euclidean_equationproductsecondreal. (((((ge_representation_real_code_bezout_euclidean_equationproductsecond) = 2 * (ge_balance_positive_bezout_euclidean_equationproductsecondreal) /\ (ge_balance_negative_bezout_euclidean_equationproductsecondreal) = 0) \/ exists ge_signed_half_bezout_euclidean_equationproductsecondrealdecode. (((ge_representation_real_code_bezout_euclidean_equationproductsecond) = 2 * ge_signed_half_bezout_euclidean_equationproductsecondrealdecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationproductsecondreal) = 0) /\ (ge_balance_negative_bezout_euclidean_equationproductsecondreal) = S ge_signed_half_bezout_euclidean_equationproductsecondrealdecode))) /\ ((ge_second_rp_bezout_euclidean_equationproduct) + ge_balance_negative_bezout_euclidean_equationproductsecondreal = (ge_second_rn_bezout_euclidean_equationproduct) + ge_balance_positive_bezout_euclidean_equationproductsecondreal))) /\ (exists ge_balance_positive_bezout_euclidean_equationproductsecondimaginary ge_balance_negative_bezout_euclidean_equationproductsecondimaginary. (((((ge_representation_imaginary_code_bezout_euclidean_equationproductsecond) = 2 * (ge_balance_positive_bezout_euclidean_equationproductsecondimaginary) /\ (ge_balance_negative_bezout_euclidean_equationproductsecondimaginary) = 0) \/ exists ge_signed_half_bezout_euclidean_equationproductsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_euclidean_equationproductsecond) = 2 * ge_signed_half_bezout_euclidean_equationproductsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationproductsecondimaginary) = 0) /\ (ge_balance_negative_bezout_euclidean_equationproductsecondimaginary) = S ge_signed_half_bezout_euclidean_equationproductsecondimaginarydecode))) /\ ((ge_second_ip_bezout_euclidean_equationproduct) + ge_balance_negative_bezout_euclidean_equationproductsecondimaginary = (ge_second_in_bezout_euclidean_equationproduct) + ge_balance_positive_bezout_euclidean_equationproductsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_euclidean_equationproductoutput ge_representation_imaginary_code_bezout_euclidean_equationproductoutput. (((ge_division_product_bezout_euclidean_equation) = ((ge_representation_real_code_bezout_euclidean_equationproductoutput) + (ge_representation_imaginary_code_bezout_euclidean_equationproductoutput)) * S ((ge_representation_real_code_bezout_euclidean_equationproductoutput) + (ge_representation_imaginary_code_bezout_euclidean_equationproductoutput)) + ((ge_representation_imaginary_code_bezout_euclidean_equationproductoutput) + (ge_representation_imaginary_code_bezout_euclidean_equationproductoutput))) /\ ((exists ge_balance_positive_bezout_euclidean_equationproductoutputreal ge_balance_negative_bezout_euclidean_equationproductoutputreal. (((((ge_representation_real_code_bezout_euclidean_equationproductoutput) = 2 * (ge_balance_positive_bezout_euclidean_equationproductoutputreal) /\ (ge_balance_negative_bezout_euclidean_equationproductoutputreal) = 0) \/ exists ge_signed_half_bezout_euclidean_equationproductoutputrealdecode. (((ge_representation_real_code_bezout_euclidean_equationproductoutput) = 2 * ge_signed_half_bezout_euclidean_equationproductoutputrealdecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationproductoutputreal) = 0) /\ (ge_balance_negative_bezout_euclidean_equationproductoutputreal) = S ge_signed_half_bezout_euclidean_equationproductoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_euclidean_equationproduct) * (ge_second_rp_bezout_euclidean_equationproduct))) + (((ge_first_rn_bezout_euclidean_equationproduct) * (ge_second_rn_bezout_euclidean_equationproduct))))) + (((((ge_first_ip_bezout_euclidean_equationproduct) * (ge_second_in_bezout_euclidean_equationproduct))) + (((ge_first_in_bezout_euclidean_equationproduct) * (ge_second_ip_bezout_euclidean_equationproduct))))))) + ge_balance_negative_bezout_euclidean_equationproductoutputreal = (((((((ge_first_rp_bezout_euclidean_equationproduct) * (ge_second_rn_bezout_euclidean_equationproduct))) + (((ge_first_rn_bezout_euclidean_equationproduct) * (ge_second_rp_bezout_euclidean_equationproduct))))) + (((((ge_first_ip_bezout_euclidean_equationproduct) * (ge_second_ip_bezout_euclidean_equationproduct))) + (((ge_first_in_bezout_euclidean_equationproduct) * (ge_second_in_bezout_euclidean_equationproduct))))))) + ge_balance_positive_bezout_euclidean_equationproductoutputreal))) /\ (exists ge_balance_positive_bezout_euclidean_equationproductoutputimaginary ge_balance_negative_bezout_euclidean_equationproductoutputimaginary. (((((ge_representation_imaginary_code_bezout_euclidean_equationproductoutput) = 2 * (ge_balance_positive_bezout_euclidean_equationproductoutputimaginary) /\ (ge_balance_negative_bezout_euclidean_equationproductoutputimaginary) = 0) \/ exists ge_signed_half_bezout_euclidean_equationproductoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_euclidean_equationproductoutput) = 2 * ge_signed_half_bezout_euclidean_equationproductoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationproductoutputimaginary) = 0) /\ (ge_balance_negative_bezout_euclidean_equationproductoutputimaginary) = S ge_signed_half_bezout_euclidean_equationproductoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_euclidean_equationproduct) * (ge_second_ip_bezout_euclidean_equationproduct))) + (((ge_first_rn_bezout_euclidean_equationproduct) * (ge_second_in_bezout_euclidean_equationproduct))))) + (((((ge_first_ip_bezout_euclidean_equationproduct) * (ge_second_rp_bezout_euclidean_equationproduct))) + (((ge_first_in_bezout_euclidean_equationproduct) * (ge_second_rn_bezout_euclidean_equationproduct))))))) + ge_balance_negative_bezout_euclidean_equationproductoutputimaginary = (((((((ge_first_rp_bezout_euclidean_equationproduct) * (ge_second_in_bezout_euclidean_equationproduct))) + (((ge_first_rn_bezout_euclidean_equationproduct) * (ge_second_ip_bezout_euclidean_equationproduct))))) + (((((ge_first_ip_bezout_euclidean_equationproduct) * (ge_second_rn_bezout_euclidean_equationproduct))) + (((ge_first_in_bezout_euclidean_equationproduct) * (ge_second_rp_bezout_euclidean_equationproduct))))))) + ge_balance_positive_bezout_euclidean_equationproductoutputimaginary))))))))) /\ (exists ge_first_rp_bezout_euclidean_equationsum ge_first_rn_bezout_euclidean_equationsum ge_first_ip_bezout_euclidean_equationsum ge_first_in_bezout_euclidean_equationsum ge_second_rp_bezout_euclidean_equationsum ge_second_rn_bezout_euclidean_equationsum ge_second_ip_bezout_euclidean_equationsum ge_second_in_bezout_euclidean_equationsum. ((exists ge_representation_real_code_bezout_euclidean_equationsumfirst ge_representation_imaginary_code_bezout_euclidean_equationsumfirst. (((ge_division_product_bezout_euclidean_equation) = ((ge_representation_real_code_bezout_euclidean_equationsumfirst) + (ge_representation_imaginary_code_bezout_euclidean_equationsumfirst)) * S ((ge_representation_real_code_bezout_euclidean_equationsumfirst) + (ge_representation_imaginary_code_bezout_euclidean_equationsumfirst)) + ((ge_representation_imaginary_code_bezout_euclidean_equationsumfirst) + (ge_representation_imaginary_code_bezout_euclidean_equationsumfirst))) /\ ((exists ge_balance_positive_bezout_euclidean_equationsumfirstreal ge_balance_negative_bezout_euclidean_equationsumfirstreal. (((((ge_representation_real_code_bezout_euclidean_equationsumfirst) = 2 * (ge_balance_positive_bezout_euclidean_equationsumfirstreal) /\ (ge_balance_negative_bezout_euclidean_equationsumfirstreal) = 0) \/ exists ge_signed_half_bezout_euclidean_equationsumfirstrealdecode. (((ge_representation_real_code_bezout_euclidean_equationsumfirst) = 2 * ge_signed_half_bezout_euclidean_equationsumfirstrealdecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationsumfirstreal) = 0) /\ (ge_balance_negative_bezout_euclidean_equationsumfirstreal) = S ge_signed_half_bezout_euclidean_equationsumfirstrealdecode))) /\ ((ge_first_rp_bezout_euclidean_equationsum) + ge_balance_negative_bezout_euclidean_equationsumfirstreal = (ge_first_rn_bezout_euclidean_equationsum) + ge_balance_positive_bezout_euclidean_equationsumfirstreal))) /\ (exists ge_balance_positive_bezout_euclidean_equationsumfirstimaginary ge_balance_negative_bezout_euclidean_equationsumfirstimaginary. (((((ge_representation_imaginary_code_bezout_euclidean_equationsumfirst) = 2 * (ge_balance_positive_bezout_euclidean_equationsumfirstimaginary) /\ (ge_balance_negative_bezout_euclidean_equationsumfirstimaginary) = 0) \/ exists ge_signed_half_bezout_euclidean_equationsumfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_euclidean_equationsumfirst) = 2 * ge_signed_half_bezout_euclidean_equationsumfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationsumfirstimaginary) = 0) /\ (ge_balance_negative_bezout_euclidean_equationsumfirstimaginary) = S ge_signed_half_bezout_euclidean_equationsumfirstimaginarydecode))) /\ ((ge_first_ip_bezout_euclidean_equationsum) + ge_balance_negative_bezout_euclidean_equationsumfirstimaginary = (ge_first_in_bezout_euclidean_equationsum) + ge_balance_positive_bezout_euclidean_equationsumfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_euclidean_equationsumsecond ge_representation_imaginary_code_bezout_euclidean_equationsumsecond. (((r) = ((ge_representation_real_code_bezout_euclidean_equationsumsecond) + (ge_representation_imaginary_code_bezout_euclidean_equationsumsecond)) * S ((ge_representation_real_code_bezout_euclidean_equationsumsecond) + (ge_representation_imaginary_code_bezout_euclidean_equationsumsecond)) + ((ge_representation_imaginary_code_bezout_euclidean_equationsumsecond) + (ge_representation_imaginary_code_bezout_euclidean_equationsumsecond))) /\ ((exists ge_balance_positive_bezout_euclidean_equationsumsecondreal ge_balance_negative_bezout_euclidean_equationsumsecondreal. (((((ge_representation_real_code_bezout_euclidean_equationsumsecond) = 2 * (ge_balance_positive_bezout_euclidean_equationsumsecondreal) /\ (ge_balance_negative_bezout_euclidean_equationsumsecondreal) = 0) \/ exists ge_signed_half_bezout_euclidean_equationsumsecondrealdecode. (((ge_representation_real_code_bezout_euclidean_equationsumsecond) = 2 * ge_signed_half_bezout_euclidean_equationsumsecondrealdecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationsumsecondreal) = 0) /\ (ge_balance_negative_bezout_euclidean_equationsumsecondreal) = S ge_signed_half_bezout_euclidean_equationsumsecondrealdecode))) /\ ((ge_second_rp_bezout_euclidean_equationsum) + ge_balance_negative_bezout_euclidean_equationsumsecondreal = (ge_second_rn_bezout_euclidean_equationsum) + ge_balance_positive_bezout_euclidean_equationsumsecondreal))) /\ (exists ge_balance_positive_bezout_euclidean_equationsumsecondimaginary ge_balance_negative_bezout_euclidean_equationsumsecondimaginary. (((((ge_representation_imaginary_code_bezout_euclidean_equationsumsecond) = 2 * (ge_balance_positive_bezout_euclidean_equationsumsecondimaginary) /\ (ge_balance_negative_bezout_euclidean_equationsumsecondimaginary) = 0) \/ exists ge_signed_half_bezout_euclidean_equationsumsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_euclidean_equationsumsecond) = 2 * ge_signed_half_bezout_euclidean_equationsumsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationsumsecondimaginary) = 0) /\ (ge_balance_negative_bezout_euclidean_equationsumsecondimaginary) = S ge_signed_half_bezout_euclidean_equationsumsecondimaginarydecode))) /\ ((ge_second_ip_bezout_euclidean_equationsum) + ge_balance_negative_bezout_euclidean_equationsumsecondimaginary = (ge_second_in_bezout_euclidean_equationsum) + ge_balance_positive_bezout_euclidean_equationsumsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_euclidean_equationsumoutput ge_representation_imaginary_code_bezout_euclidean_equationsumoutput. (((a) = ((ge_representation_real_code_bezout_euclidean_equationsumoutput) + (ge_representation_imaginary_code_bezout_euclidean_equationsumoutput)) * S ((ge_representation_real_code_bezout_euclidean_equationsumoutput) + (ge_representation_imaginary_code_bezout_euclidean_equationsumoutput)) + ((ge_representation_imaginary_code_bezout_euclidean_equationsumoutput) + (ge_representation_imaginary_code_bezout_euclidean_equationsumoutput))) /\ ((exists ge_balance_positive_bezout_euclidean_equationsumoutputreal ge_balance_negative_bezout_euclidean_equationsumoutputreal. (((((ge_representation_real_code_bezout_euclidean_equationsumoutput) = 2 * (ge_balance_positive_bezout_euclidean_equationsumoutputreal) /\ (ge_balance_negative_bezout_euclidean_equationsumoutputreal) = 0) \/ exists ge_signed_half_bezout_euclidean_equationsumoutputrealdecode. (((ge_representation_real_code_bezout_euclidean_equationsumoutput) = 2 * ge_signed_half_bezout_euclidean_equationsumoutputrealdecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationsumoutputreal) = 0) /\ (ge_balance_negative_bezout_euclidean_equationsumoutputreal) = S ge_signed_half_bezout_euclidean_equationsumoutputrealdecode))) /\ ((((ge_first_rp_bezout_euclidean_equationsum) + (ge_second_rp_bezout_euclidean_equationsum))) + ge_balance_negative_bezout_euclidean_equationsumoutputreal = (((ge_first_rn_bezout_euclidean_equationsum) + (ge_second_rn_bezout_euclidean_equationsum))) + ge_balance_positive_bezout_euclidean_equationsumoutputreal))) /\ (exists ge_balance_positive_bezout_euclidean_equationsumoutputimaginary ge_balance_negative_bezout_euclidean_equationsumoutputimaginary. (((((ge_representation_imaginary_code_bezout_euclidean_equationsumoutput) = 2 * (ge_balance_positive_bezout_euclidean_equationsumoutputimaginary) /\ (ge_balance_negative_bezout_euclidean_equationsumoutputimaginary) = 0) \/ exists ge_signed_half_bezout_euclidean_equationsumoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_euclidean_equationsumoutput) = 2 * ge_signed_half_bezout_euclidean_equationsumoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_euclidean_equationsumoutputimaginary) = 0) /\ (ge_balance_negative_bezout_euclidean_equationsumoutputimaginary) = S ge_signed_half_bezout_euclidean_equationsumoutputimaginarydecode))) /\ ((((ge_first_ip_bezout_euclidean_equationsum) + (ge_second_ip_bezout_euclidean_equationsum))) + ge_balance_negative_bezout_euclidean_equationsumoutputimaginary = (((ge_first_in_bezout_euclidean_equationsum) + (ge_second_in_bezout_euclidean_equationsum))) + ge_balance_positive_bezout_euclidean_equationsumoutputimaginary))))))))))) -> (exists gr_first_product_bezout_remainder gr_second_product_bezout_remainder. ((exists ge_first_rp_bezout_remainderfirst ge_first_rn_bezout_remainderfirst ge_first_ip_bezout_remainderfirst ge_first_in_bezout_remainderfirst ge_second_rp_bezout_remainderfirst ge_second_rn_bezout_remainderfirst ge_second_ip_bezout_remainderfirst ge_second_in_bezout_remainderfirst. ((exists ge_representation_real_code_bezout_remainderfirstfirst ge_representation_imaginary_code_bezout_remainderfirstfirst. (((b) = ((ge_representation_real_code_bezout_remainderfirstfirst) + (ge_representation_imaginary_code_bezout_remainderfirstfirst)) * S ((ge_representation_real_code_bezout_remainderfirstfirst) + (ge_representation_imaginary_code_bezout_remainderfirstfirst)) + ((ge_representation_imaginary_code_bezout_remainderfirstfirst) + (ge_representation_imaginary_code_bezout_remainderfirstfirst))) /\ ((exists ge_balance_positive_bezout_remainderfirstfirstreal ge_balance_negative_bezout_remainderfirstfirstreal. (((((ge_representation_real_code_bezout_remainderfirstfirst) = 2 * (ge_balance_positive_bezout_remainderfirstfirstreal) /\ (ge_balance_negative_bezout_remainderfirstfirstreal) = 0) \/ exists ge_signed_half_bezout_remainderfirstfirstrealdecode. (((ge_representation_real_code_bezout_remainderfirstfirst) = 2 * ge_signed_half_bezout_remainderfirstfirstrealdecode + 1 /\ (ge_balance_positive_bezout_remainderfirstfirstreal) = 0) /\ (ge_balance_negative_bezout_remainderfirstfirstreal) = S ge_signed_half_bezout_remainderfirstfirstrealdecode))) /\ ((ge_first_rp_bezout_remainderfirst) + ge_balance_negative_bezout_remainderfirstfirstreal = (ge_first_rn_bezout_remainderfirst) + ge_balance_positive_bezout_remainderfirstfirstreal))) /\ (exists ge_balance_positive_bezout_remainderfirstfirstimaginary ge_balance_negative_bezout_remainderfirstfirstimaginary. (((((ge_representation_imaginary_code_bezout_remainderfirstfirst) = 2 * (ge_balance_positive_bezout_remainderfirstfirstimaginary) /\ (ge_balance_negative_bezout_remainderfirstfirstimaginary) = 0) \/ exists ge_signed_half_bezout_remainderfirstfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_remainderfirstfirst) = 2 * ge_signed_half_bezout_remainderfirstfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_remainderfirstfirstimaginary) = 0) /\ (ge_balance_negative_bezout_remainderfirstfirstimaginary) = S ge_signed_half_bezout_remainderfirstfirstimaginarydecode))) /\ ((ge_first_ip_bezout_remainderfirst) + ge_balance_negative_bezout_remainderfirstfirstimaginary = (ge_first_in_bezout_remainderfirst) + ge_balance_positive_bezout_remainderfirstfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_remainderfirstsecond ge_representation_imaginary_code_bezout_remainderfirstsecond. (((u) = ((ge_representation_real_code_bezout_remainderfirstsecond) + (ge_representation_imaginary_code_bezout_remainderfirstsecond)) * S ((ge_representation_real_code_bezout_remainderfirstsecond) + (ge_representation_imaginary_code_bezout_remainderfirstsecond)) + ((ge_representation_imaginary_code_bezout_remainderfirstsecond) + (ge_representation_imaginary_code_bezout_remainderfirstsecond))) /\ ((exists ge_balance_positive_bezout_remainderfirstsecondreal ge_balance_negative_bezout_remainderfirstsecondreal. (((((ge_representation_real_code_bezout_remainderfirstsecond) = 2 * (ge_balance_positive_bezout_remainderfirstsecondreal) /\ (ge_balance_negative_bezout_remainderfirstsecondreal) = 0) \/ exists ge_signed_half_bezout_remainderfirstsecondrealdecode. (((ge_representation_real_code_bezout_remainderfirstsecond) = 2 * ge_signed_half_bezout_remainderfirstsecondrealdecode + 1 /\ (ge_balance_positive_bezout_remainderfirstsecondreal) = 0) /\ (ge_balance_negative_bezout_remainderfirstsecondreal) = S ge_signed_half_bezout_remainderfirstsecondrealdecode))) /\ ((ge_second_rp_bezout_remainderfirst) + ge_balance_negative_bezout_remainderfirstsecondreal = (ge_second_rn_bezout_remainderfirst) + ge_balance_positive_bezout_remainderfirstsecondreal))) /\ (exists ge_balance_positive_bezout_remainderfirstsecondimaginary ge_balance_negative_bezout_remainderfirstsecondimaginary. (((((ge_representation_imaginary_code_bezout_remainderfirstsecond) = 2 * (ge_balance_positive_bezout_remainderfirstsecondimaginary) /\ (ge_balance_negative_bezout_remainderfirstsecondimaginary) = 0) \/ exists ge_signed_half_bezout_remainderfirstsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_remainderfirstsecond) = 2 * ge_signed_half_bezout_remainderfirstsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_remainderfirstsecondimaginary) = 0) /\ (ge_balance_negative_bezout_remainderfirstsecondimaginary) = S ge_signed_half_bezout_remainderfirstsecondimaginarydecode))) /\ ((ge_second_ip_bezout_remainderfirst) + ge_balance_negative_bezout_remainderfirstsecondimaginary = (ge_second_in_bezout_remainderfirst) + ge_balance_positive_bezout_remainderfirstsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_remainderfirstoutput ge_representation_imaginary_code_bezout_remainderfirstoutput. (((gr_first_product_bezout_remainder) = ((ge_representation_real_code_bezout_remainderfirstoutput) + (ge_representation_imaginary_code_bezout_remainderfirstoutput)) * S ((ge_representation_real_code_bezout_remainderfirstoutput) + (ge_representation_imaginary_code_bezout_remainderfirstoutput)) + ((ge_representation_imaginary_code_bezout_remainderfirstoutput) + (ge_representation_imaginary_code_bezout_remainderfirstoutput))) /\ ((exists ge_balance_positive_bezout_remainderfirstoutputreal ge_balance_negative_bezout_remainderfirstoutputreal. (((((ge_representation_real_code_bezout_remainderfirstoutput) = 2 * (ge_balance_positive_bezout_remainderfirstoutputreal) /\ (ge_balance_negative_bezout_remainderfirstoutputreal) = 0) \/ exists ge_signed_half_bezout_remainderfirstoutputrealdecode. (((ge_representation_real_code_bezout_remainderfirstoutput) = 2 * ge_signed_half_bezout_remainderfirstoutputrealdecode + 1 /\ (ge_balance_positive_bezout_remainderfirstoutputreal) = 0) /\ (ge_balance_negative_bezout_remainderfirstoutputreal) = S ge_signed_half_bezout_remainderfirstoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_remainderfirst) * (ge_second_rp_bezout_remainderfirst))) + (((ge_first_rn_bezout_remainderfirst) * (ge_second_rn_bezout_remainderfirst))))) + (((((ge_first_ip_bezout_remainderfirst) * (ge_second_in_bezout_remainderfirst))) + (((ge_first_in_bezout_remainderfirst) * (ge_second_ip_bezout_remainderfirst))))))) + ge_balance_negative_bezout_remainderfirstoutputreal = (((((((ge_first_rp_bezout_remainderfirst) * (ge_second_rn_bezout_remainderfirst))) + (((ge_first_rn_bezout_remainderfirst) * (ge_second_rp_bezout_remainderfirst))))) + (((((ge_first_ip_bezout_remainderfirst) * (ge_second_ip_bezout_remainderfirst))) + (((ge_first_in_bezout_remainderfirst) * (ge_second_in_bezout_remainderfirst))))))) + ge_balance_positive_bezout_remainderfirstoutputreal))) /\ (exists ge_balance_positive_bezout_remainderfirstoutputimaginary ge_balance_negative_bezout_remainderfirstoutputimaginary. (((((ge_representation_imaginary_code_bezout_remainderfirstoutput) = 2 * (ge_balance_positive_bezout_remainderfirstoutputimaginary) /\ (ge_balance_negative_bezout_remainderfirstoutputimaginary) = 0) \/ exists ge_signed_half_bezout_remainderfirstoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_remainderfirstoutput) = 2 * ge_signed_half_bezout_remainderfirstoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_remainderfirstoutputimaginary) = 0) /\ (ge_balance_negative_bezout_remainderfirstoutputimaginary) = S ge_signed_half_bezout_remainderfirstoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_remainderfirst) * (ge_second_ip_bezout_remainderfirst))) + (((ge_first_rn_bezout_remainderfirst) * (ge_second_in_bezout_remainderfirst))))) + (((((ge_first_ip_bezout_remainderfirst) * (ge_second_rp_bezout_remainderfirst))) + (((ge_first_in_bezout_remainderfirst) * (ge_second_rn_bezout_remainderfirst))))))) + ge_balance_negative_bezout_remainderfirstoutputimaginary = (((((((ge_first_rp_bezout_remainderfirst) * (ge_second_in_bezout_remainderfirst))) + (((ge_first_rn_bezout_remainderfirst) * (ge_second_ip_bezout_remainderfirst))))) + (((((ge_first_ip_bezout_remainderfirst) * (ge_second_rn_bezout_remainderfirst))) + (((ge_first_in_bezout_remainderfirst) * (ge_second_rp_bezout_remainderfirst))))))) + ge_balance_positive_bezout_remainderfirstoutputimaginary))))))))) /\ ((exists ge_first_rp_bezout_remaindersecond ge_first_rn_bezout_remaindersecond ge_first_ip_bezout_remaindersecond ge_first_in_bezout_remaindersecond ge_second_rp_bezout_remaindersecond ge_second_rn_bezout_remaindersecond ge_second_ip_bezout_remaindersecond ge_second_in_bezout_remaindersecond. ((exists ge_representation_real_code_bezout_remaindersecondfirst ge_representation_imaginary_code_bezout_remaindersecondfirst. (((r) = ((ge_representation_real_code_bezout_remaindersecondfirst) + (ge_representation_imaginary_code_bezout_remaindersecondfirst)) * S ((ge_representation_real_code_bezout_remaindersecondfirst) + (ge_representation_imaginary_code_bezout_remaindersecondfirst)) + ((ge_representation_imaginary_code_bezout_remaindersecondfirst) + (ge_representation_imaginary_code_bezout_remaindersecondfirst))) /\ ((exists ge_balance_positive_bezout_remaindersecondfirstreal ge_balance_negative_bezout_remaindersecondfirstreal. (((((ge_representation_real_code_bezout_remaindersecondfirst) = 2 * (ge_balance_positive_bezout_remaindersecondfirstreal) /\ (ge_balance_negative_bezout_remaindersecondfirstreal) = 0) \/ exists ge_signed_half_bezout_remaindersecondfirstrealdecode. (((ge_representation_real_code_bezout_remaindersecondfirst) = 2 * ge_signed_half_bezout_remaindersecondfirstrealdecode + 1 /\ (ge_balance_positive_bezout_remaindersecondfirstreal) = 0) /\ (ge_balance_negative_bezout_remaindersecondfirstreal) = S ge_signed_half_bezout_remaindersecondfirstrealdecode))) /\ ((ge_first_rp_bezout_remaindersecond) + ge_balance_negative_bezout_remaindersecondfirstreal = (ge_first_rn_bezout_remaindersecond) + ge_balance_positive_bezout_remaindersecondfirstreal))) /\ (exists ge_balance_positive_bezout_remaindersecondfirstimaginary ge_balance_negative_bezout_remaindersecondfirstimaginary. (((((ge_representation_imaginary_code_bezout_remaindersecondfirst) = 2 * (ge_balance_positive_bezout_remaindersecondfirstimaginary) /\ (ge_balance_negative_bezout_remaindersecondfirstimaginary) = 0) \/ exists ge_signed_half_bezout_remaindersecondfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_remaindersecondfirst) = 2 * ge_signed_half_bezout_remaindersecondfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_remaindersecondfirstimaginary) = 0) /\ (ge_balance_negative_bezout_remaindersecondfirstimaginary) = S ge_signed_half_bezout_remaindersecondfirstimaginarydecode))) /\ ((ge_first_ip_bezout_remaindersecond) + ge_balance_negative_bezout_remaindersecondfirstimaginary = (ge_first_in_bezout_remaindersecond) + ge_balance_positive_bezout_remaindersecondfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_remaindersecondsecond ge_representation_imaginary_code_bezout_remaindersecondsecond. (((v) = ((ge_representation_real_code_bezout_remaindersecondsecond) + (ge_representation_imaginary_code_bezout_remaindersecondsecond)) * S ((ge_representation_real_code_bezout_remaindersecondsecond) + (ge_representation_imaginary_code_bezout_remaindersecondsecond)) + ((ge_representation_imaginary_code_bezout_remaindersecondsecond) + (ge_representation_imaginary_code_bezout_remaindersecondsecond))) /\ ((exists ge_balance_positive_bezout_remaindersecondsecondreal ge_balance_negative_bezout_remaindersecondsecondreal. (((((ge_representation_real_code_bezout_remaindersecondsecond) = 2 * (ge_balance_positive_bezout_remaindersecondsecondreal) /\ (ge_balance_negative_bezout_remaindersecondsecondreal) = 0) \/ exists ge_signed_half_bezout_remaindersecondsecondrealdecode. (((ge_representation_real_code_bezout_remaindersecondsecond) = 2 * ge_signed_half_bezout_remaindersecondsecondrealdecode + 1 /\ (ge_balance_positive_bezout_remaindersecondsecondreal) = 0) /\ (ge_balance_negative_bezout_remaindersecondsecondreal) = S ge_signed_half_bezout_remaindersecondsecondrealdecode))) /\ ((ge_second_rp_bezout_remaindersecond) + ge_balance_negative_bezout_remaindersecondsecondreal = (ge_second_rn_bezout_remaindersecond) + ge_balance_positive_bezout_remaindersecondsecondreal))) /\ (exists ge_balance_positive_bezout_remaindersecondsecondimaginary ge_balance_negative_bezout_remaindersecondsecondimaginary. (((((ge_representation_imaginary_code_bezout_remaindersecondsecond) = 2 * (ge_balance_positive_bezout_remaindersecondsecondimaginary) /\ (ge_balance_negative_bezout_remaindersecondsecondimaginary) = 0) \/ exists ge_signed_half_bezout_remaindersecondsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_remaindersecondsecond) = 2 * ge_signed_half_bezout_remaindersecondsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_remaindersecondsecondimaginary) = 0) /\ (ge_balance_negative_bezout_remaindersecondsecondimaginary) = S ge_signed_half_bezout_remaindersecondsecondimaginarydecode))) /\ ((ge_second_ip_bezout_remaindersecond) + ge_balance_negative_bezout_remaindersecondsecondimaginary = (ge_second_in_bezout_remaindersecond) + ge_balance_positive_bezout_remaindersecondsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_remaindersecondoutput ge_representation_imaginary_code_bezout_remaindersecondoutput. (((gr_second_product_bezout_remainder) = ((ge_representation_real_code_bezout_remaindersecondoutput) + (ge_representation_imaginary_code_bezout_remaindersecondoutput)) * S ((ge_representation_real_code_bezout_remaindersecondoutput) + (ge_representation_imaginary_code_bezout_remaindersecondoutput)) + ((ge_representation_imaginary_code_bezout_remaindersecondoutput) + (ge_representation_imaginary_code_bezout_remaindersecondoutput))) /\ ((exists ge_balance_positive_bezout_remaindersecondoutputreal ge_balance_negative_bezout_remaindersecondoutputreal. (((((ge_representation_real_code_bezout_remaindersecondoutput) = 2 * (ge_balance_positive_bezout_remaindersecondoutputreal) /\ (ge_balance_negative_bezout_remaindersecondoutputreal) = 0) \/ exists ge_signed_half_bezout_remaindersecondoutputrealdecode. (((ge_representation_real_code_bezout_remaindersecondoutput) = 2 * ge_signed_half_bezout_remaindersecondoutputrealdecode + 1 /\ (ge_balance_positive_bezout_remaindersecondoutputreal) = 0) /\ (ge_balance_negative_bezout_remaindersecondoutputreal) = S ge_signed_half_bezout_remaindersecondoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_remaindersecond) * (ge_second_rp_bezout_remaindersecond))) + (((ge_first_rn_bezout_remaindersecond) * (ge_second_rn_bezout_remaindersecond))))) + (((((ge_first_ip_bezout_remaindersecond) * (ge_second_in_bezout_remaindersecond))) + (((ge_first_in_bezout_remaindersecond) * (ge_second_ip_bezout_remaindersecond))))))) + ge_balance_negative_bezout_remaindersecondoutputreal = (((((((ge_first_rp_bezout_remaindersecond) * (ge_second_rn_bezout_remaindersecond))) + (((ge_first_rn_bezout_remaindersecond) * (ge_second_rp_bezout_remaindersecond))))) + (((((ge_first_ip_bezout_remaindersecond) * (ge_second_ip_bezout_remaindersecond))) + (((ge_first_in_bezout_remaindersecond) * (ge_second_in_bezout_remaindersecond))))))) + ge_balance_positive_bezout_remaindersecondoutputreal))) /\ (exists ge_balance_positive_bezout_remaindersecondoutputimaginary ge_balance_negative_bezout_remaindersecondoutputimaginary. (((((ge_representation_imaginary_code_bezout_remaindersecondoutput) = 2 * (ge_balance_positive_bezout_remaindersecondoutputimaginary) /\ (ge_balance_negative_bezout_remaindersecondoutputimaginary) = 0) \/ exists ge_signed_half_bezout_remaindersecondoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_remaindersecondoutput) = 2 * ge_signed_half_bezout_remaindersecondoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_remaindersecondoutputimaginary) = 0) /\ (ge_balance_negative_bezout_remaindersecondoutputimaginary) = S ge_signed_half_bezout_remaindersecondoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_remaindersecond) * (ge_second_ip_bezout_remaindersecond))) + (((ge_first_rn_bezout_remaindersecond) * (ge_second_in_bezout_remaindersecond))))) + (((((ge_first_ip_bezout_remaindersecond) * (ge_second_rp_bezout_remaindersecond))) + (((ge_first_in_bezout_remaindersecond) * (ge_second_rn_bezout_remaindersecond))))))) + ge_balance_negative_bezout_remaindersecondoutputimaginary = (((((((ge_first_rp_bezout_remaindersecond) * (ge_second_in_bezout_remaindersecond))) + (((ge_first_rn_bezout_remaindersecond) * (ge_second_ip_bezout_remaindersecond))))) + (((((ge_first_ip_bezout_remaindersecond) * (ge_second_rn_bezout_remaindersecond))) + (((ge_first_in_bezout_remaindersecond) * (ge_second_rp_bezout_remaindersecond))))))) + ge_balance_positive_bezout_remaindersecondoutputimaginary))))))))) /\ (exists ge_first_rp_bezout_remaindersum ge_first_rn_bezout_remaindersum ge_first_ip_bezout_remaindersum ge_first_in_bezout_remaindersum ge_second_rp_bezout_remaindersum ge_second_rn_bezout_remaindersum ge_second_ip_bezout_remaindersum ge_second_in_bezout_remaindersum. ((exists ge_representation_real_code_bezout_remaindersumfirst ge_representation_imaginary_code_bezout_remaindersumfirst. (((gr_first_product_bezout_remainder) = ((ge_representation_real_code_bezout_remaindersumfirst) + (ge_representation_imaginary_code_bezout_remaindersumfirst)) * S ((ge_representation_real_code_bezout_remaindersumfirst) + (ge_representation_imaginary_code_bezout_remaindersumfirst)) + ((ge_representation_imaginary_code_bezout_remaindersumfirst) + (ge_representation_imaginary_code_bezout_remaindersumfirst))) /\ ((exists ge_balance_positive_bezout_remaindersumfirstreal ge_balance_negative_bezout_remaindersumfirstreal. (((((ge_representation_real_code_bezout_remaindersumfirst) = 2 * (ge_balance_positive_bezout_remaindersumfirstreal) /\ (ge_balance_negative_bezout_remaindersumfirstreal) = 0) \/ exists ge_signed_half_bezout_remaindersumfirstrealdecode. (((ge_representation_real_code_bezout_remaindersumfirst) = 2 * ge_signed_half_bezout_remaindersumfirstrealdecode + 1 /\ (ge_balance_positive_bezout_remaindersumfirstreal) = 0) /\ (ge_balance_negative_bezout_remaindersumfirstreal) = S ge_signed_half_bezout_remaindersumfirstrealdecode))) /\ ((ge_first_rp_bezout_remaindersum) + ge_balance_negative_bezout_remaindersumfirstreal = (ge_first_rn_bezout_remaindersum) + ge_balance_positive_bezout_remaindersumfirstreal))) /\ (exists ge_balance_positive_bezout_remaindersumfirstimaginary ge_balance_negative_bezout_remaindersumfirstimaginary. (((((ge_representation_imaginary_code_bezout_remaindersumfirst) = 2 * (ge_balance_positive_bezout_remaindersumfirstimaginary) /\ (ge_balance_negative_bezout_remaindersumfirstimaginary) = 0) \/ exists ge_signed_half_bezout_remaindersumfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_remaindersumfirst) = 2 * ge_signed_half_bezout_remaindersumfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_remaindersumfirstimaginary) = 0) /\ (ge_balance_negative_bezout_remaindersumfirstimaginary) = S ge_signed_half_bezout_remaindersumfirstimaginarydecode))) /\ ((ge_first_ip_bezout_remaindersum) + ge_balance_negative_bezout_remaindersumfirstimaginary = (ge_first_in_bezout_remaindersum) + ge_balance_positive_bezout_remaindersumfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_remaindersumsecond ge_representation_imaginary_code_bezout_remaindersumsecond. (((gr_second_product_bezout_remainder) = ((ge_representation_real_code_bezout_remaindersumsecond) + (ge_representation_imaginary_code_bezout_remaindersumsecond)) * S ((ge_representation_real_code_bezout_remaindersumsecond) + (ge_representation_imaginary_code_bezout_remaindersumsecond)) + ((ge_representation_imaginary_code_bezout_remaindersumsecond) + (ge_representation_imaginary_code_bezout_remaindersumsecond))) /\ ((exists ge_balance_positive_bezout_remaindersumsecondreal ge_balance_negative_bezout_remaindersumsecondreal. (((((ge_representation_real_code_bezout_remaindersumsecond) = 2 * (ge_balance_positive_bezout_remaindersumsecondreal) /\ (ge_balance_negative_bezout_remaindersumsecondreal) = 0) \/ exists ge_signed_half_bezout_remaindersumsecondrealdecode. (((ge_representation_real_code_bezout_remaindersumsecond) = 2 * ge_signed_half_bezout_remaindersumsecondrealdecode + 1 /\ (ge_balance_positive_bezout_remaindersumsecondreal) = 0) /\ (ge_balance_negative_bezout_remaindersumsecondreal) = S ge_signed_half_bezout_remaindersumsecondrealdecode))) /\ ((ge_second_rp_bezout_remaindersum) + ge_balance_negative_bezout_remaindersumsecondreal = (ge_second_rn_bezout_remaindersum) + ge_balance_positive_bezout_remaindersumsecondreal))) /\ (exists ge_balance_positive_bezout_remaindersumsecondimaginary ge_balance_negative_bezout_remaindersumsecondimaginary. (((((ge_representation_imaginary_code_bezout_remaindersumsecond) = 2 * (ge_balance_positive_bezout_remaindersumsecondimaginary) /\ (ge_balance_negative_bezout_remaindersumsecondimaginary) = 0) \/ exists ge_signed_half_bezout_remaindersumsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_remaindersumsecond) = 2 * ge_signed_half_bezout_remaindersumsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_remaindersumsecondimaginary) = 0) /\ (ge_balance_negative_bezout_remaindersumsecondimaginary) = S ge_signed_half_bezout_remaindersumsecondimaginarydecode))) /\ ((ge_second_ip_bezout_remaindersum) + ge_balance_negative_bezout_remaindersumsecondimaginary = (ge_second_in_bezout_remaindersum) + ge_balance_positive_bezout_remaindersumsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_remaindersumoutput ge_representation_imaginary_code_bezout_remaindersumoutput. (((g) = ((ge_representation_real_code_bezout_remaindersumoutput) + (ge_representation_imaginary_code_bezout_remaindersumoutput)) * S ((ge_representation_real_code_bezout_remaindersumoutput) + (ge_representation_imaginary_code_bezout_remaindersumoutput)) + ((ge_representation_imaginary_code_bezout_remaindersumoutput) + (ge_representation_imaginary_code_bezout_remaindersumoutput))) /\ ((exists ge_balance_positive_bezout_remaindersumoutputreal ge_balance_negative_bezout_remaindersumoutputreal. (((((ge_representation_real_code_bezout_remaindersumoutput) = 2 * (ge_balance_positive_bezout_remaindersumoutputreal) /\ (ge_balance_negative_bezout_remaindersumoutputreal) = 0) \/ exists ge_signed_half_bezout_remaindersumoutputrealdecode. (((ge_representation_real_code_bezout_remaindersumoutput) = 2 * ge_signed_half_bezout_remaindersumoutputrealdecode + 1 /\ (ge_balance_positive_bezout_remaindersumoutputreal) = 0) /\ (ge_balance_negative_bezout_remaindersumoutputreal) = S ge_signed_half_bezout_remaindersumoutputrealdecode))) /\ ((((ge_first_rp_bezout_remaindersum) + (ge_second_rp_bezout_remaindersum))) + ge_balance_negative_bezout_remaindersumoutputreal = (((ge_first_rn_bezout_remaindersum) + (ge_second_rn_bezout_remaindersum))) + ge_balance_positive_bezout_remaindersumoutputreal))) /\ (exists ge_balance_positive_bezout_remaindersumoutputimaginary ge_balance_negative_bezout_remaindersumoutputimaginary. (((((ge_representation_imaginary_code_bezout_remaindersumoutput) = 2 * (ge_balance_positive_bezout_remaindersumoutputimaginary) /\ (ge_balance_negative_bezout_remaindersumoutputimaginary) = 0) \/ exists ge_signed_half_bezout_remaindersumoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_remaindersumoutput) = 2 * ge_signed_half_bezout_remaindersumoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_remaindersumoutputimaginary) = 0) /\ (ge_balance_negative_bezout_remaindersumoutputimaginary) = S ge_signed_half_bezout_remaindersumoutputimaginarydecode))) /\ ((((ge_first_ip_bezout_remaindersum) + (ge_second_ip_bezout_remaindersum))) + ge_balance_negative_bezout_remaindersumoutputimaginary = (((ge_first_in_bezout_remaindersum) + (ge_second_in_bezout_remaindersum))) + ge_balance_positive_bezout_remaindersumoutputimaginary)))))))))))) -> exists w. (exists gr_first_product_bezout_dividend gr_second_product_bezout_dividend. ((exists ge_first_rp_bezout_dividendfirst ge_first_rn_bezout_dividendfirst ge_first_ip_bezout_dividendfirst ge_first_in_bezout_dividendfirst ge_second_rp_bezout_dividendfirst ge_second_rn_bezout_dividendfirst ge_second_ip_bezout_dividendfirst ge_second_in_bezout_dividendfirst. ((exists ge_representation_real_code_bezout_dividendfirstfirst ge_representation_imaginary_code_bezout_dividendfirstfirst. (((a) = ((ge_representation_real_code_bezout_dividendfirstfirst) + (ge_representation_imaginary_code_bezout_dividendfirstfirst)) * S ((ge_representation_real_code_bezout_dividendfirstfirst) + (ge_representation_imaginary_code_bezout_dividendfirstfirst)) + ((ge_representation_imaginary_code_bezout_dividendfirstfirst) + (ge_representation_imaginary_code_bezout_dividendfirstfirst))) /\ ((exists ge_balance_positive_bezout_dividendfirstfirstreal ge_balance_negative_bezout_dividendfirstfirstreal. (((((ge_representation_real_code_bezout_dividendfirstfirst) = 2 * (ge_balance_positive_bezout_dividendfirstfirstreal) /\ (ge_balance_negative_bezout_dividendfirstfirstreal) = 0) \/ exists ge_signed_half_bezout_dividendfirstfirstrealdecode. (((ge_representation_real_code_bezout_dividendfirstfirst) = 2 * ge_signed_half_bezout_dividendfirstfirstrealdecode + 1 /\ (ge_balance_positive_bezout_dividendfirstfirstreal) = 0) /\ (ge_balance_negative_bezout_dividendfirstfirstreal) = S ge_signed_half_bezout_dividendfirstfirstrealdecode))) /\ ((ge_first_rp_bezout_dividendfirst) + ge_balance_negative_bezout_dividendfirstfirstreal = (ge_first_rn_bezout_dividendfirst) + ge_balance_positive_bezout_dividendfirstfirstreal))) /\ (exists ge_balance_positive_bezout_dividendfirstfirstimaginary ge_balance_negative_bezout_dividendfirstfirstimaginary. (((((ge_representation_imaginary_code_bezout_dividendfirstfirst) = 2 * (ge_balance_positive_bezout_dividendfirstfirstimaginary) /\ (ge_balance_negative_bezout_dividendfirstfirstimaginary) = 0) \/ exists ge_signed_half_bezout_dividendfirstfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendfirstfirst) = 2 * ge_signed_half_bezout_dividendfirstfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendfirstfirstimaginary) = 0) /\ (ge_balance_negative_bezout_dividendfirstfirstimaginary) = S ge_signed_half_bezout_dividendfirstfirstimaginarydecode))) /\ ((ge_first_ip_bezout_dividendfirst) + ge_balance_negative_bezout_dividendfirstfirstimaginary = (ge_first_in_bezout_dividendfirst) + ge_balance_positive_bezout_dividendfirstfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_dividendfirstsecond ge_representation_imaginary_code_bezout_dividendfirstsecond. (((v) = ((ge_representation_real_code_bezout_dividendfirstsecond) + (ge_representation_imaginary_code_bezout_dividendfirstsecond)) * S ((ge_representation_real_code_bezout_dividendfirstsecond) + (ge_representation_imaginary_code_bezout_dividendfirstsecond)) + ((ge_representation_imaginary_code_bezout_dividendfirstsecond) + (ge_representation_imaginary_code_bezout_dividendfirstsecond))) /\ ((exists ge_balance_positive_bezout_dividendfirstsecondreal ge_balance_negative_bezout_dividendfirstsecondreal. (((((ge_representation_real_code_bezout_dividendfirstsecond) = 2 * (ge_balance_positive_bezout_dividendfirstsecondreal) /\ (ge_balance_negative_bezout_dividendfirstsecondreal) = 0) \/ exists ge_signed_half_bezout_dividendfirstsecondrealdecode. (((ge_representation_real_code_bezout_dividendfirstsecond) = 2 * ge_signed_half_bezout_dividendfirstsecondrealdecode + 1 /\ (ge_balance_positive_bezout_dividendfirstsecondreal) = 0) /\ (ge_balance_negative_bezout_dividendfirstsecondreal) = S ge_signed_half_bezout_dividendfirstsecondrealdecode))) /\ ((ge_second_rp_bezout_dividendfirst) + ge_balance_negative_bezout_dividendfirstsecondreal = (ge_second_rn_bezout_dividendfirst) + ge_balance_positive_bezout_dividendfirstsecondreal))) /\ (exists ge_balance_positive_bezout_dividendfirstsecondimaginary ge_balance_negative_bezout_dividendfirstsecondimaginary. (((((ge_representation_imaginary_code_bezout_dividendfirstsecond) = 2 * (ge_balance_positive_bezout_dividendfirstsecondimaginary) /\ (ge_balance_negative_bezout_dividendfirstsecondimaginary) = 0) \/ exists ge_signed_half_bezout_dividendfirstsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendfirstsecond) = 2 * ge_signed_half_bezout_dividendfirstsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendfirstsecondimaginary) = 0) /\ (ge_balance_negative_bezout_dividendfirstsecondimaginary) = S ge_signed_half_bezout_dividendfirstsecondimaginarydecode))) /\ ((ge_second_ip_bezout_dividendfirst) + ge_balance_negative_bezout_dividendfirstsecondimaginary = (ge_second_in_bezout_dividendfirst) + ge_balance_positive_bezout_dividendfirstsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_dividendfirstoutput ge_representation_imaginary_code_bezout_dividendfirstoutput. (((gr_first_product_bezout_dividend) = ((ge_representation_real_code_bezout_dividendfirstoutput) + (ge_representation_imaginary_code_bezout_dividendfirstoutput)) * S ((ge_representation_real_code_bezout_dividendfirstoutput) + (ge_representation_imaginary_code_bezout_dividendfirstoutput)) + ((ge_representation_imaginary_code_bezout_dividendfirstoutput) + (ge_representation_imaginary_code_bezout_dividendfirstoutput))) /\ ((exists ge_balance_positive_bezout_dividendfirstoutputreal ge_balance_negative_bezout_dividendfirstoutputreal. (((((ge_representation_real_code_bezout_dividendfirstoutput) = 2 * (ge_balance_positive_bezout_dividendfirstoutputreal) /\ (ge_balance_negative_bezout_dividendfirstoutputreal) = 0) \/ exists ge_signed_half_bezout_dividendfirstoutputrealdecode. (((ge_representation_real_code_bezout_dividendfirstoutput) = 2 * ge_signed_half_bezout_dividendfirstoutputrealdecode + 1 /\ (ge_balance_positive_bezout_dividendfirstoutputreal) = 0) /\ (ge_balance_negative_bezout_dividendfirstoutputreal) = S ge_signed_half_bezout_dividendfirstoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_dividendfirst) * (ge_second_rp_bezout_dividendfirst))) + (((ge_first_rn_bezout_dividendfirst) * (ge_second_rn_bezout_dividendfirst))))) + (((((ge_first_ip_bezout_dividendfirst) * (ge_second_in_bezout_dividendfirst))) + (((ge_first_in_bezout_dividendfirst) * (ge_second_ip_bezout_dividendfirst))))))) + ge_balance_negative_bezout_dividendfirstoutputreal = (((((((ge_first_rp_bezout_dividendfirst) * (ge_second_rn_bezout_dividendfirst))) + (((ge_first_rn_bezout_dividendfirst) * (ge_second_rp_bezout_dividendfirst))))) + (((((ge_first_ip_bezout_dividendfirst) * (ge_second_ip_bezout_dividendfirst))) + (((ge_first_in_bezout_dividendfirst) * (ge_second_in_bezout_dividendfirst))))))) + ge_balance_positive_bezout_dividendfirstoutputreal))) /\ (exists ge_balance_positive_bezout_dividendfirstoutputimaginary ge_balance_negative_bezout_dividendfirstoutputimaginary. (((((ge_representation_imaginary_code_bezout_dividendfirstoutput) = 2 * (ge_balance_positive_bezout_dividendfirstoutputimaginary) /\ (ge_balance_negative_bezout_dividendfirstoutputimaginary) = 0) \/ exists ge_signed_half_bezout_dividendfirstoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendfirstoutput) = 2 * ge_signed_half_bezout_dividendfirstoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendfirstoutputimaginary) = 0) /\ (ge_balance_negative_bezout_dividendfirstoutputimaginary) = S ge_signed_half_bezout_dividendfirstoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_dividendfirst) * (ge_second_ip_bezout_dividendfirst))) + (((ge_first_rn_bezout_dividendfirst) * (ge_second_in_bezout_dividendfirst))))) + (((((ge_first_ip_bezout_dividendfirst) * (ge_second_rp_bezout_dividendfirst))) + (((ge_first_in_bezout_dividendfirst) * (ge_second_rn_bezout_dividendfirst))))))) + ge_balance_negative_bezout_dividendfirstoutputimaginary = (((((((ge_first_rp_bezout_dividendfirst) * (ge_second_in_bezout_dividendfirst))) + (((ge_first_rn_bezout_dividendfirst) * (ge_second_ip_bezout_dividendfirst))))) + (((((ge_first_ip_bezout_dividendfirst) * (ge_second_rn_bezout_dividendfirst))) + (((ge_first_in_bezout_dividendfirst) * (ge_second_rp_bezout_dividendfirst))))))) + ge_balance_positive_bezout_dividendfirstoutputimaginary))))))))) /\ ((exists ge_first_rp_bezout_dividendsecond ge_first_rn_bezout_dividendsecond ge_first_ip_bezout_dividendsecond ge_first_in_bezout_dividendsecond ge_second_rp_bezout_dividendsecond ge_second_rn_bezout_dividendsecond ge_second_ip_bezout_dividendsecond ge_second_in_bezout_dividendsecond. ((exists ge_representation_real_code_bezout_dividendsecondfirst ge_representation_imaginary_code_bezout_dividendsecondfirst. (((b) = ((ge_representation_real_code_bezout_dividendsecondfirst) + (ge_representation_imaginary_code_bezout_dividendsecondfirst)) * S ((ge_representation_real_code_bezout_dividendsecondfirst) + (ge_representation_imaginary_code_bezout_dividendsecondfirst)) + ((ge_representation_imaginary_code_bezout_dividendsecondfirst) + (ge_representation_imaginary_code_bezout_dividendsecondfirst))) /\ ((exists ge_balance_positive_bezout_dividendsecondfirstreal ge_balance_negative_bezout_dividendsecondfirstreal. (((((ge_representation_real_code_bezout_dividendsecondfirst) = 2 * (ge_balance_positive_bezout_dividendsecondfirstreal) /\ (ge_balance_negative_bezout_dividendsecondfirstreal) = 0) \/ exists ge_signed_half_bezout_dividendsecondfirstrealdecode. (((ge_representation_real_code_bezout_dividendsecondfirst) = 2 * ge_signed_half_bezout_dividendsecondfirstrealdecode + 1 /\ (ge_balance_positive_bezout_dividendsecondfirstreal) = 0) /\ (ge_balance_negative_bezout_dividendsecondfirstreal) = S ge_signed_half_bezout_dividendsecondfirstrealdecode))) /\ ((ge_first_rp_bezout_dividendsecond) + ge_balance_negative_bezout_dividendsecondfirstreal = (ge_first_rn_bezout_dividendsecond) + ge_balance_positive_bezout_dividendsecondfirstreal))) /\ (exists ge_balance_positive_bezout_dividendsecondfirstimaginary ge_balance_negative_bezout_dividendsecondfirstimaginary. (((((ge_representation_imaginary_code_bezout_dividendsecondfirst) = 2 * (ge_balance_positive_bezout_dividendsecondfirstimaginary) /\ (ge_balance_negative_bezout_dividendsecondfirstimaginary) = 0) \/ exists ge_signed_half_bezout_dividendsecondfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendsecondfirst) = 2 * ge_signed_half_bezout_dividendsecondfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendsecondfirstimaginary) = 0) /\ (ge_balance_negative_bezout_dividendsecondfirstimaginary) = S ge_signed_half_bezout_dividendsecondfirstimaginarydecode))) /\ ((ge_first_ip_bezout_dividendsecond) + ge_balance_negative_bezout_dividendsecondfirstimaginary = (ge_first_in_bezout_dividendsecond) + ge_balance_positive_bezout_dividendsecondfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_dividendsecondsecond ge_representation_imaginary_code_bezout_dividendsecondsecond. (((w) = ((ge_representation_real_code_bezout_dividendsecondsecond) + (ge_representation_imaginary_code_bezout_dividendsecondsecond)) * S ((ge_representation_real_code_bezout_dividendsecondsecond) + (ge_representation_imaginary_code_bezout_dividendsecondsecond)) + ((ge_representation_imaginary_code_bezout_dividendsecondsecond) + (ge_representation_imaginary_code_bezout_dividendsecondsecond))) /\ ((exists ge_balance_positive_bezout_dividendsecondsecondreal ge_balance_negative_bezout_dividendsecondsecondreal. (((((ge_representation_real_code_bezout_dividendsecondsecond) = 2 * (ge_balance_positive_bezout_dividendsecondsecondreal) /\ (ge_balance_negative_bezout_dividendsecondsecondreal) = 0) \/ exists ge_signed_half_bezout_dividendsecondsecondrealdecode. (((ge_representation_real_code_bezout_dividendsecondsecond) = 2 * ge_signed_half_bezout_dividendsecondsecondrealdecode + 1 /\ (ge_balance_positive_bezout_dividendsecondsecondreal) = 0) /\ (ge_balance_negative_bezout_dividendsecondsecondreal) = S ge_signed_half_bezout_dividendsecondsecondrealdecode))) /\ ((ge_second_rp_bezout_dividendsecond) + ge_balance_negative_bezout_dividendsecondsecondreal = (ge_second_rn_bezout_dividendsecond) + ge_balance_positive_bezout_dividendsecondsecondreal))) /\ (exists ge_balance_positive_bezout_dividendsecondsecondimaginary ge_balance_negative_bezout_dividendsecondsecondimaginary. (((((ge_representation_imaginary_code_bezout_dividendsecondsecond) = 2 * (ge_balance_positive_bezout_dividendsecondsecondimaginary) /\ (ge_balance_negative_bezout_dividendsecondsecondimaginary) = 0) \/ exists ge_signed_half_bezout_dividendsecondsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendsecondsecond) = 2 * ge_signed_half_bezout_dividendsecondsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendsecondsecondimaginary) = 0) /\ (ge_balance_negative_bezout_dividendsecondsecondimaginary) = S ge_signed_half_bezout_dividendsecondsecondimaginarydecode))) /\ ((ge_second_ip_bezout_dividendsecond) + ge_balance_negative_bezout_dividendsecondsecondimaginary = (ge_second_in_bezout_dividendsecond) + ge_balance_positive_bezout_dividendsecondsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_dividendsecondoutput ge_representation_imaginary_code_bezout_dividendsecondoutput. (((gr_second_product_bezout_dividend) = ((ge_representation_real_code_bezout_dividendsecondoutput) + (ge_representation_imaginary_code_bezout_dividendsecondoutput)) * S ((ge_representation_real_code_bezout_dividendsecondoutput) + (ge_representation_imaginary_code_bezout_dividendsecondoutput)) + ((ge_representation_imaginary_code_bezout_dividendsecondoutput) + (ge_representation_imaginary_code_bezout_dividendsecondoutput))) /\ ((exists ge_balance_positive_bezout_dividendsecondoutputreal ge_balance_negative_bezout_dividendsecondoutputreal. (((((ge_representation_real_code_bezout_dividendsecondoutput) = 2 * (ge_balance_positive_bezout_dividendsecondoutputreal) /\ (ge_balance_negative_bezout_dividendsecondoutputreal) = 0) \/ exists ge_signed_half_bezout_dividendsecondoutputrealdecode. (((ge_representation_real_code_bezout_dividendsecondoutput) = 2 * ge_signed_half_bezout_dividendsecondoutputrealdecode + 1 /\ (ge_balance_positive_bezout_dividendsecondoutputreal) = 0) /\ (ge_balance_negative_bezout_dividendsecondoutputreal) = S ge_signed_half_bezout_dividendsecondoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_dividendsecond) * (ge_second_rp_bezout_dividendsecond))) + (((ge_first_rn_bezout_dividendsecond) * (ge_second_rn_bezout_dividendsecond))))) + (((((ge_first_ip_bezout_dividendsecond) * (ge_second_in_bezout_dividendsecond))) + (((ge_first_in_bezout_dividendsecond) * (ge_second_ip_bezout_dividendsecond))))))) + ge_balance_negative_bezout_dividendsecondoutputreal = (((((((ge_first_rp_bezout_dividendsecond) * (ge_second_rn_bezout_dividendsecond))) + (((ge_first_rn_bezout_dividendsecond) * (ge_second_rp_bezout_dividendsecond))))) + (((((ge_first_ip_bezout_dividendsecond) * (ge_second_ip_bezout_dividendsecond))) + (((ge_first_in_bezout_dividendsecond) * (ge_second_in_bezout_dividendsecond))))))) + ge_balance_positive_bezout_dividendsecondoutputreal))) /\ (exists ge_balance_positive_bezout_dividendsecondoutputimaginary ge_balance_negative_bezout_dividendsecondoutputimaginary. (((((ge_representation_imaginary_code_bezout_dividendsecondoutput) = 2 * (ge_balance_positive_bezout_dividendsecondoutputimaginary) /\ (ge_balance_negative_bezout_dividendsecondoutputimaginary) = 0) \/ exists ge_signed_half_bezout_dividendsecondoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendsecondoutput) = 2 * ge_signed_half_bezout_dividendsecondoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendsecondoutputimaginary) = 0) /\ (ge_balance_negative_bezout_dividendsecondoutputimaginary) = S ge_signed_half_bezout_dividendsecondoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_dividendsecond) * (ge_second_ip_bezout_dividendsecond))) + (((ge_first_rn_bezout_dividendsecond) * (ge_second_in_bezout_dividendsecond))))) + (((((ge_first_ip_bezout_dividendsecond) * (ge_second_rp_bezout_dividendsecond))) + (((ge_first_in_bezout_dividendsecond) * (ge_second_rn_bezout_dividendsecond))))))) + ge_balance_negative_bezout_dividendsecondoutputimaginary = (((((((ge_first_rp_bezout_dividendsecond) * (ge_second_in_bezout_dividendsecond))) + (((ge_first_rn_bezout_dividendsecond) * (ge_second_ip_bezout_dividendsecond))))) + (((((ge_first_ip_bezout_dividendsecond) * (ge_second_rn_bezout_dividendsecond))) + (((ge_first_in_bezout_dividendsecond) * (ge_second_rp_bezout_dividendsecond))))))) + ge_balance_positive_bezout_dividendsecondoutputimaginary))))))))) /\ (exists ge_first_rp_bezout_dividendsum ge_first_rn_bezout_dividendsum ge_first_ip_bezout_dividendsum ge_first_in_bezout_dividendsum ge_second_rp_bezout_dividendsum ge_second_rn_bezout_dividendsum ge_second_ip_bezout_dividendsum ge_second_in_bezout_dividendsum. ((exists ge_representation_real_code_bezout_dividendsumfirst ge_representation_imaginary_code_bezout_dividendsumfirst. (((gr_first_product_bezout_dividend) = ((ge_representation_real_code_bezout_dividendsumfirst) + (ge_representation_imaginary_code_bezout_dividendsumfirst)) * S ((ge_representation_real_code_bezout_dividendsumfirst) + (ge_representation_imaginary_code_bezout_dividendsumfirst)) + ((ge_representation_imaginary_code_bezout_dividendsumfirst) + (ge_representation_imaginary_code_bezout_dividendsumfirst))) /\ ((exists ge_balance_positive_bezout_dividendsumfirstreal ge_balance_negative_bezout_dividendsumfirstreal. (((((ge_representation_real_code_bezout_dividendsumfirst) = 2 * (ge_balance_positive_bezout_dividendsumfirstreal) /\ (ge_balance_negative_bezout_dividendsumfirstreal) = 0) \/ exists ge_signed_half_bezout_dividendsumfirstrealdecode. (((ge_representation_real_code_bezout_dividendsumfirst) = 2 * ge_signed_half_bezout_dividendsumfirstrealdecode + 1 /\ (ge_balance_positive_bezout_dividendsumfirstreal) = 0) /\ (ge_balance_negative_bezout_dividendsumfirstreal) = S ge_signed_half_bezout_dividendsumfirstrealdecode))) /\ ((ge_first_rp_bezout_dividendsum) + ge_balance_negative_bezout_dividendsumfirstreal = (ge_first_rn_bezout_dividendsum) + ge_balance_positive_bezout_dividendsumfirstreal))) /\ (exists ge_balance_positive_bezout_dividendsumfirstimaginary ge_balance_negative_bezout_dividendsumfirstimaginary. (((((ge_representation_imaginary_code_bezout_dividendsumfirst) = 2 * (ge_balance_positive_bezout_dividendsumfirstimaginary) /\ (ge_balance_negative_bezout_dividendsumfirstimaginary) = 0) \/ exists ge_signed_half_bezout_dividendsumfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendsumfirst) = 2 * ge_signed_half_bezout_dividendsumfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendsumfirstimaginary) = 0) /\ (ge_balance_negative_bezout_dividendsumfirstimaginary) = S ge_signed_half_bezout_dividendsumfirstimaginarydecode))) /\ ((ge_first_ip_bezout_dividendsum) + ge_balance_negative_bezout_dividendsumfirstimaginary = (ge_first_in_bezout_dividendsum) + ge_balance_positive_bezout_dividendsumfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_dividendsumsecond ge_representation_imaginary_code_bezout_dividendsumsecond. (((gr_second_product_bezout_dividend) = ((ge_representation_real_code_bezout_dividendsumsecond) + (ge_representation_imaginary_code_bezout_dividendsumsecond)) * S ((ge_representation_real_code_bezout_dividendsumsecond) + (ge_representation_imaginary_code_bezout_dividendsumsecond)) + ((ge_representation_imaginary_code_bezout_dividendsumsecond) + (ge_representation_imaginary_code_bezout_dividendsumsecond))) /\ ((exists ge_balance_positive_bezout_dividendsumsecondreal ge_balance_negative_bezout_dividendsumsecondreal. (((((ge_representation_real_code_bezout_dividendsumsecond) = 2 * (ge_balance_positive_bezout_dividendsumsecondreal) /\ (ge_balance_negative_bezout_dividendsumsecondreal) = 0) \/ exists ge_signed_half_bezout_dividendsumsecondrealdecode. (((ge_representation_real_code_bezout_dividendsumsecond) = 2 * ge_signed_half_bezout_dividendsumsecondrealdecode + 1 /\ (ge_balance_positive_bezout_dividendsumsecondreal) = 0) /\ (ge_balance_negative_bezout_dividendsumsecondreal) = S ge_signed_half_bezout_dividendsumsecondrealdecode))) /\ ((ge_second_rp_bezout_dividendsum) + ge_balance_negative_bezout_dividendsumsecondreal = (ge_second_rn_bezout_dividendsum) + ge_balance_positive_bezout_dividendsumsecondreal))) /\ (exists ge_balance_positive_bezout_dividendsumsecondimaginary ge_balance_negative_bezout_dividendsumsecondimaginary. (((((ge_representation_imaginary_code_bezout_dividendsumsecond) = 2 * (ge_balance_positive_bezout_dividendsumsecondimaginary) /\ (ge_balance_negative_bezout_dividendsumsecondimaginary) = 0) \/ exists ge_signed_half_bezout_dividendsumsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendsumsecond) = 2 * ge_signed_half_bezout_dividendsumsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendsumsecondimaginary) = 0) /\ (ge_balance_negative_bezout_dividendsumsecondimaginary) = S ge_signed_half_bezout_dividendsumsecondimaginarydecode))) /\ ((ge_second_ip_bezout_dividendsum) + ge_balance_negative_bezout_dividendsumsecondimaginary = (ge_second_in_bezout_dividendsum) + ge_balance_positive_bezout_dividendsumsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_dividendsumoutput ge_representation_imaginary_code_bezout_dividendsumoutput. (((g) = ((ge_representation_real_code_bezout_dividendsumoutput) + (ge_representation_imaginary_code_bezout_dividendsumoutput)) * S ((ge_representation_real_code_bezout_dividendsumoutput) + (ge_representation_imaginary_code_bezout_dividendsumoutput)) + ((ge_representation_imaginary_code_bezout_dividendsumoutput) + (ge_representation_imaginary_code_bezout_dividendsumoutput))) /\ ((exists ge_balance_positive_bezout_dividendsumoutputreal ge_balance_negative_bezout_dividendsumoutputreal. (((((ge_representation_real_code_bezout_dividendsumoutput) = 2 * (ge_balance_positive_bezout_dividendsumoutputreal) /\ (ge_balance_negative_bezout_dividendsumoutputreal) = 0) \/ exists ge_signed_half_bezout_dividendsumoutputrealdecode. (((ge_representation_real_code_bezout_dividendsumoutput) = 2 * ge_signed_half_bezout_dividendsumoutputrealdecode + 1 /\ (ge_balance_positive_bezout_dividendsumoutputreal) = 0) /\ (ge_balance_negative_bezout_dividendsumoutputreal) = S ge_signed_half_bezout_dividendsumoutputrealdecode))) /\ ((((ge_first_rp_bezout_dividendsum) + (ge_second_rp_bezout_dividendsum))) + ge_balance_negative_bezout_dividendsumoutputreal = (((ge_first_rn_bezout_dividendsum) + (ge_second_rn_bezout_dividendsum))) + ge_balance_positive_bezout_dividendsumoutputreal))) /\ (exists ge_balance_positive_bezout_dividendsumoutputimaginary ge_balance_negative_bezout_dividendsumoutputimaginary. (((((ge_representation_imaginary_code_bezout_dividendsumoutput) = 2 * (ge_balance_positive_bezout_dividendsumoutputimaginary) /\ (ge_balance_negative_bezout_dividendsumoutputimaginary) = 0) \/ exists ge_signed_half_bezout_dividendsumoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_dividendsumoutput) = 2 * ge_signed_half_bezout_dividendsumoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividendsumoutputimaginary) = 0) /\ (ge_balance_negative_bezout_dividendsumoutputimaginary) = S ge_signed_half_bezout_dividendsumoutputimaginarydecode))) /\ ((((ge_first_ip_bezout_dividendsum) + (ge_second_ip_bezout_dividendsum))) + ge_balance_negative_bezout_dividendsumoutputimaginary = (((ge_first_in_bezout_dividendsum) + (ge_second_in_bezout_dividendsum))) + ge_balance_positive_bezout_dividendsumoutputimaginary))))))))))))

Constructive proof overview

Generated structural guide

Construct the coefficient u-qv and verify the complete Gaussian Bézout back-substitution using actual products, differences, distribution and addition.

The unchanged tactic script uses 12 declared prerequisites and contains 148 exact native proof lines.

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

Proof neighborhood

Direct dependencies

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

148 script commands · 29 reading checkpoints · 8 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 (11)

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

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

  1. L1
    intro g
  2. L2
    intro a
  3. L3
    intro b
  4. L4
    intro q
  5. L5
    intro r
  6. L6
    intro u
  7. L7
    intro v
  8. L8
    intro heq
  9. L9
    intro hbez
02Separate the logical casesL10–15

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

  1. L10
    cases heq
  2. L11
    cases heq_witness
  3. L12
    cases hbez
  4. L13
    cases hbez_witness
  5. L14
    cases hbez_witness_witness
  6. L15
    cases hbez_witness_witness_right
03Establish hqvL16–25

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

  1. L16
    have hqv : ∃ w. GMul(q,v,w)Definitions: GMul
  2. L17
    specialize gaussian_multiply_exists (q)
  3. L18
    specialize gaussian_multiply_exists (v)
  4. L19
    apply gaussian_multiply_exists
  5. L20
    specialize gaussian_multiply_input_right_valid (b)
  6. L21
    specialize gaussian_multiply_input_right_valid (q)
  7. L22
    specialize gaussian_multiply_input_right_valid (x)
  8. L23
    apply gaussian_multiply_input_right_valid
  9. L24
    exact heq_witness_left
  10. L25
    specialize gaussian_multiply_input_right_valid (r)
04Use earlier factsL26–29

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

  1. L26
    specialize gaussian_multiply_input_right_valid (v)
  2. L27
    specialize gaussian_multiply_input_right_valid (x2)
  3. L28
    apply gaussian_multiply_input_right_valid
  4. L29
    exact hbez_witness_witness_right_left
05Separate the logical casesL30–30

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

  1. L30
    cases hqv
06Establish hwL31–40

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

  1. L31
    have hw : ∃ w. ZPairAdd(w,x3,u)Definitions: ZPairAdd
  2. L32
    specialize gaussian_subtract_exists (u)
  3. L33
    specialize gaussian_subtract_exists (x3)
  4. L34
    apply gaussian_subtract_exists
  5. L35
    specialize gaussian_multiply_input_right_valid (b)
  6. L36
    specialize gaussian_multiply_input_right_valid (u)
  7. L37
    specialize gaussian_multiply_input_right_valid (x1)
  8. L38
    apply gaussian_multiply_input_right_valid
  9. L39
    exact hbez_witness_witness_left
  10. L40
    specialize gaussian_multiply_output_valid (q)
07Use earlier factsL41–44

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

  1. L41
    specialize gaussian_multiply_output_valid (v)
  2. L42
    specialize gaussian_multiply_output_valid (x3)
  3. L43
    apply gaussian_multiply_output_valid
  4. L44
    exact hqv_witness
08Separate the logical casesL45–45

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

  1. L45
    cases hw
09Establish hPvL46–55

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

  1. L46
    have hPv : ∃ w. GMul(x,v,w)Definitions: GMul
  2. L47
    specialize gaussian_multiply_exists (x)
  3. L48
    specialize gaussian_multiply_exists (v)
  4. L49
    apply gaussian_multiply_exists
  5. L50
    specialize gaussian_multiply_output_valid (b)
  6. L51
    specialize gaussian_multiply_output_valid (q)
  7. L52
    specialize gaussian_multiply_output_valid (x)
  8. L53
    apply gaussian_multiply_output_valid
  9. L54
    exact heq_witness_left
  10. L55
    specialize gaussian_multiply_input_right_valid (r)
10Use earlier factsL56–59

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

  1. L56
    specialize gaussian_multiply_input_right_valid (v)
  2. L57
    specialize gaussian_multiply_input_right_valid (x2)
  3. L58
    apply gaussian_multiply_input_right_valid
  4. L59
    exact hbez_witness_witness_right_left
11Separate the logical casesL60–60

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

  1. L60
    cases hPv
12Establish hAvL61–70

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

  1. L61
    have hAv : ∃ w. GMul(a,v,w)Definitions: GMul
  2. L62
    specialize gaussian_multiply_exists (a)
  3. L63
    specialize gaussian_multiply_exists (v)
  4. L64
    apply gaussian_multiply_exists
  5. L65
    specialize gaussian_add_output_valid (x)
  6. L66
    specialize gaussian_add_output_valid (r)
  7. L67
    specialize gaussian_add_output_valid (a)
  8. L68
    apply gaussian_add_output_valid
  9. L69
    exact heq_witness_right
  10. L70
    specialize gaussian_multiply_input_right_valid (r)
13Use earlier factsL71–74

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

  1. L71
    specialize gaussian_multiply_input_right_valid (v)
  2. L72
    specialize gaussian_multiply_input_right_valid (x2)
  3. L73
    apply gaussian_multiply_input_right_valid
  4. L74
    exact hbez_witness_witness_right_left
14Separate the logical casesL75–75

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

  1. L75
    cases hAv
15Establish hBwL76–85

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

  1. L76
    have hBw : ∃ w. GMul(b,x4,w)Definitions: GMul
  2. L77
    specialize gaussian_multiply_exists (b)
  3. L78
    specialize gaussian_multiply_exists (x4)
  4. L79
    apply gaussian_multiply_exists
  5. L80
    specialize gaussian_multiply_input_left_valid (b)
  6. L81
    specialize gaussian_multiply_input_left_valid (q)
  7. L82
    specialize gaussian_multiply_input_left_valid (x)
  8. L83
    apply gaussian_multiply_input_left_valid
  9. L84
    exact heq_witness_left
  10. L85
    specialize gaussian_add_input_left_valid (x4)
16Use earlier factsL86–89

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

  1. L86
    specialize gaussian_add_input_left_valid (x3)
  2. L87
    specialize gaussian_add_input_left_valid (u)
  3. L88
    apply gaussian_add_input_left_valid
  4. L89
    exact hw_witness
17Separate the logical casesL90–90

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

  1. L90
    cases hBw
18Establish hBqvL91–100

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

  1. L91
    have hBqv : GMul(b,x3,x5)Definitions: GMul
  2. L92
    specialize gaussian_multiply_associative (b)
  3. L93
    specialize gaussian_multiply_associative (q)
  4. L94
    specialize gaussian_multiply_associative (v)
  5. L95
    specialize gaussian_multiply_associative (x)
  6. L96
    specialize gaussian_multiply_associative (x3)
  7. L97
    specialize gaussian_multiply_associative (x5)
  8. L98
    apply gaussian_multiply_associative
  9. L99
    exact heq_witness_left
  10. L100
    exact hPv_witness
19Use earlier factsL101–101

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

  1. L101
    exact hqv_witness
20Establish hfirstsumL102–111

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian multiply add distribute right.

  1. L102
    have hfirstsum : ZPairAdd(x5,x2,x6)Definitions: ZPairAdd
  2. L103
    specialize gaussian_multiply_add_distribute_right (v)
  3. L104
    specialize gaussian_multiply_add_distribute_right (x)
  4. L105
    specialize gaussian_multiply_add_distribute_right (r)
  5. L106
    specialize gaussian_multiply_add_distribute_right (a)
  6. L107
    specialize gaussian_multiply_add_distribute_right (x5)
  7. L108
    specialize gaussian_multiply_add_distribute_right (x2)
  8. L109
    specialize gaussian_multiply_add_distribute_right (x6)
  9. L110
    apply gaussian_multiply_add_distribute_right
  10. L111
    exact heq_witness_right
21Use earlier factsL112–114

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

  1. L112
    exact hPv_witness
  2. L113
    exact hbez_witness_witness_right_left
  3. L114
    exact hAv_witness
22Establish hsecondsumL115–124

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian multiply add distribute.

  1. L115
    have hsecondsum : ZPairAdd(x7,x5,x1)Definitions: ZPairAdd
  2. L116
    specialize gaussian_multiply_add_distribute (b)
  3. L117
    specialize gaussian_multiply_add_distribute (x4)
  4. L118
    specialize gaussian_multiply_add_distribute (x3)
  5. L119
    specialize gaussian_multiply_add_distribute (u)
  6. L120
    specialize gaussian_multiply_add_distribute (x7)
  7. L121
    specialize gaussian_multiply_add_distribute (x5)
  8. L122
    specialize gaussian_multiply_add_distribute (x1)
  9. L123
    apply gaussian_multiply_add_distribute
  10. L124
    exact hw_witness
23Use earlier factsL125–127

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

  1. L125
    exact hBw_witness
  2. L126
    exact hBqv
  3. L127
    exact hbez_witness_witness_left
24Construct an explicit witnessL128–130

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

  1. L128
    exists (x4)
  2. L129
    exists (x6)
  3. L130
    exists (x7)
25Separate the logical casesL131–131

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

  1. L131
    split
26Use earlier factsL132–132

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

  1. L132
    exact hAv_witness
27Separate the logical casesL133–133

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

  1. L133
    split
28Use earlier factsL134–143

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

  1. L134
    exact hBw_witness
  2. L135
    specialize gaussian_add_commutative (x7)
  3. L136
    specialize gaussian_add_commutative (x6)
  4. L137
    specialize gaussian_add_commutative (g)
  5. L138
    apply gaussian_add_commutative
  6. L139
    specialize gaussian_add_associative (x7)
  7. L140
    specialize gaussian_add_associative (x5)
  8. L141
    specialize gaussian_add_associative (x2)
  9. L142
    specialize gaussian_add_associative (x1)
  10. L143
    specialize gaussian_add_associative (x6)
29Use earlier factsL144–148

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

  1. L144
    specialize gaussian_add_associative (g)
  2. L145
    apply gaussian_add_associative
  3. L146
    exact hsecondsum
  4. L147
    exact hbez_witness_witness_right_right
  5. L148
    exact hfirstsum

Library-wide reading audit

Original exact command ledger · 148 lines
  1. 0001intro g
  2. 0002intro a
  3. 0003intro b
  4. 0004intro q
  5. 0005intro r
  6. 0006intro u
  7. 0007intro v
  8. 0008intro heq
  9. 0009intro hbez
  10. 0010cases heq
  11. 0011cases heq_witness
  12. 0012cases hbez
  13. 0013cases hbez_witness
  14. 0014cases hbez_witness_witness
  15. 0015cases hbez_witness_witness_right
  16. 0016have hqv : exists w. (exists ge_first_rp_bezout_qv ge_first_rn_bezout_qv ge_first_ip_bezout_qv ge_first_in_bezout_qv ge_second_rp_bezout_qv ge_second_rn_bezout_qv ge_second_ip_bezout_qv ge_second_in_bezout_qv. ((exists ge_representation_real_code_bezout_qvfirst ge_representation_imaginary_code_bezout_qvfirst. (((q) = ((ge_representation_real_code_bezout_qvfirst) + (ge_representation_imaginary_code_bezout_qvfirst)) * S ((ge_representation_real_code_bezout_qvfirst) + (ge_representation_imaginary_code_bezout_qvfirst)) + ((ge_representation_imaginary_code_bezout_qvfirst) + (ge_representation_imaginary_code_bezout_qvfirst))) /\ ((exists ge_balance_positive_bezout_qvfirstreal ge_balance_negative_bezout_qvfirstreal. (((((ge_representation_real_code_bezout_qvfirst) = 2 * (ge_balance_positive_bezout_qvfirstreal) /\ (ge_balance_negative_bezout_qvfirstreal) = 0) \/ exists ge_signed_half_bezout_qvfirstrealdecode. (((ge_representation_real_code_bezout_qvfirst) = 2 * ge_signed_half_bezout_qvfirstrealdecode + 1 /\ (ge_balance_positive_bezout_qvfirstreal) = 0) /\ (ge_balance_negative_bezout_qvfirstreal) = S ge_signed_half_bezout_qvfirstrealdecode))) /\ ((ge_first_rp_bezout_qv) + ge_balance_negative_bezout_qvfirstreal = (ge_first_rn_bezout_qv) + ge_balance_positive_bezout_qvfirstreal))) /\ (exists ge_balance_positive_bezout_qvfirstimaginary ge_balance_negative_bezout_qvfirstimaginary. (((((ge_representation_imaginary_code_bezout_qvfirst) = 2 * (ge_balance_positive_bezout_qvfirstimaginary) /\ (ge_balance_negative_bezout_qvfirstimaginary) = 0) \/ exists ge_signed_half_bezout_qvfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_qvfirst) = 2 * ge_signed_half_bezout_qvfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_qvfirstimaginary) = 0) /\ (ge_balance_negative_bezout_qvfirstimaginary) = S ge_signed_half_bezout_qvfirstimaginarydecode))) /\ ((ge_first_ip_bezout_qv) + ge_balance_negative_bezout_qvfirstimaginary = (ge_first_in_bezout_qv) + ge_balance_positive_bezout_qvfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_qvsecond ge_representation_imaginary_code_bezout_qvsecond. (((v) = ((ge_representation_real_code_bezout_qvsecond) + (ge_representation_imaginary_code_bezout_qvsecond)) * S ((ge_representation_real_code_bezout_qvsecond) + (ge_representation_imaginary_code_bezout_qvsecond)) + ((ge_representation_imaginary_code_bezout_qvsecond) + (ge_representation_imaginary_code_bezout_qvsecond))) /\ ((exists ge_balance_positive_bezout_qvsecondreal ge_balance_negative_bezout_qvsecondreal. (((((ge_representation_real_code_bezout_qvsecond) = 2 * (ge_balance_positive_bezout_qvsecondreal) /\ (ge_balance_negative_bezout_qvsecondreal) = 0) \/ exists ge_signed_half_bezout_qvsecondrealdecode. (((ge_representation_real_code_bezout_qvsecond) = 2 * ge_signed_half_bezout_qvsecondrealdecode + 1 /\ (ge_balance_positive_bezout_qvsecondreal) = 0) /\ (ge_balance_negative_bezout_qvsecondreal) = S ge_signed_half_bezout_qvsecondrealdecode))) /\ ((ge_second_rp_bezout_qv) + ge_balance_negative_bezout_qvsecondreal = (ge_second_rn_bezout_qv) + ge_balance_positive_bezout_qvsecondreal))) /\ (exists ge_balance_positive_bezout_qvsecondimaginary ge_balance_negative_bezout_qvsecondimaginary. (((((ge_representation_imaginary_code_bezout_qvsecond) = 2 * (ge_balance_positive_bezout_qvsecondimaginary) /\ (ge_balance_negative_bezout_qvsecondimaginary) = 0) \/ exists ge_signed_half_bezout_qvsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_qvsecond) = 2 * ge_signed_half_bezout_qvsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_qvsecondimaginary) = 0) /\ (ge_balance_negative_bezout_qvsecondimaginary) = S ge_signed_half_bezout_qvsecondimaginarydecode))) /\ ((ge_second_ip_bezout_qv) + ge_balance_negative_bezout_qvsecondimaginary = (ge_second_in_bezout_qv) + ge_balance_positive_bezout_qvsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_qvoutput ge_representation_imaginary_code_bezout_qvoutput. (((w) = ((ge_representation_real_code_bezout_qvoutput) + (ge_representation_imaginary_code_bezout_qvoutput)) * S ((ge_representation_real_code_bezout_qvoutput) + (ge_representation_imaginary_code_bezout_qvoutput)) + ((ge_representation_imaginary_code_bezout_qvoutput) + (ge_representation_imaginary_code_bezout_qvoutput))) /\ ((exists ge_balance_positive_bezout_qvoutputreal ge_balance_negative_bezout_qvoutputreal. (((((ge_representation_real_code_bezout_qvoutput) = 2 * (ge_balance_positive_bezout_qvoutputreal) /\ (ge_balance_negative_bezout_qvoutputreal) = 0) \/ exists ge_signed_half_bezout_qvoutputrealdecode. (((ge_representation_real_code_bezout_qvoutput) = 2 * ge_signed_half_bezout_qvoutputrealdecode + 1 /\ (ge_balance_positive_bezout_qvoutputreal) = 0) /\ (ge_balance_negative_bezout_qvoutputreal) = S ge_signed_half_bezout_qvoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_qv) * (ge_second_rp_bezout_qv))) + (((ge_first_rn_bezout_qv) * (ge_second_rn_bezout_qv))))) + (((((ge_first_ip_bezout_qv) * (ge_second_in_bezout_qv))) + (((ge_first_in_bezout_qv) * (ge_second_ip_bezout_qv))))))) + ge_balance_negative_bezout_qvoutputreal = (((((((ge_first_rp_bezout_qv) * (ge_second_rn_bezout_qv))) + (((ge_first_rn_bezout_qv) * (ge_second_rp_bezout_qv))))) + (((((ge_first_ip_bezout_qv) * (ge_second_ip_bezout_qv))) + (((ge_first_in_bezout_qv) * (ge_second_in_bezout_qv))))))) + ge_balance_positive_bezout_qvoutputreal))) /\ (exists ge_balance_positive_bezout_qvoutputimaginary ge_balance_negative_bezout_qvoutputimaginary. (((((ge_representation_imaginary_code_bezout_qvoutput) = 2 * (ge_balance_positive_bezout_qvoutputimaginary) /\ (ge_balance_negative_bezout_qvoutputimaginary) = 0) \/ exists ge_signed_half_bezout_qvoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_qvoutput) = 2 * ge_signed_half_bezout_qvoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_qvoutputimaginary) = 0) /\ (ge_balance_negative_bezout_qvoutputimaginary) = S ge_signed_half_bezout_qvoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_qv) * (ge_second_ip_bezout_qv))) + (((ge_first_rn_bezout_qv) * (ge_second_in_bezout_qv))))) + (((((ge_first_ip_bezout_qv) * (ge_second_rp_bezout_qv))) + (((ge_first_in_bezout_qv) * (ge_second_rn_bezout_qv))))))) + ge_balance_negative_bezout_qvoutputimaginary = (((((((ge_first_rp_bezout_qv) * (ge_second_in_bezout_qv))) + (((ge_first_rn_bezout_qv) * (ge_second_ip_bezout_qv))))) + (((((ge_first_ip_bezout_qv) * (ge_second_rn_bezout_qv))) + (((ge_first_in_bezout_qv) * (ge_second_rp_bezout_qv))))))) + ge_balance_positive_bezout_qvoutputimaginary)))))))))
  17. 0017specialize gaussian_multiply_exists (q)
  18. 0018specialize gaussian_multiply_exists (v)
  19. 0019apply gaussian_multiply_exists
  20. 0020specialize gaussian_multiply_input_right_valid (b)
  21. 0021specialize gaussian_multiply_input_right_valid (q)
  22. 0022specialize gaussian_multiply_input_right_valid (x)
  23. 0023apply gaussian_multiply_input_right_valid
  24. 0024exact heq_witness_left
  25. 0025specialize gaussian_multiply_input_right_valid (r)
  26. 0026specialize gaussian_multiply_input_right_valid (v)
  27. 0027specialize gaussian_multiply_input_right_valid (x2)
  28. 0028apply gaussian_multiply_input_right_valid
  29. 0029exact hbez_witness_witness_right_left
  30. 0030cases hqv
  31. 0031have hw : exists w. (exists ge_first_rp_bezout_new_coefficient ge_first_rn_bezout_new_coefficient ge_first_ip_bezout_new_coefficient ge_first_in_bezout_new_coefficient ge_second_rp_bezout_new_coefficient ge_second_rn_bezout_new_coefficient ge_second_ip_bezout_new_coefficient ge_second_in_bezout_new_coefficient. ((exists ge_representation_real_code_bezout_new_coefficientfirst ge_representation_imaginary_code_bezout_new_coefficientfirst. (((w) = ((ge_representation_real_code_bezout_new_coefficientfirst) + (ge_representation_imaginary_code_bezout_new_coefficientfirst)) * S ((ge_representation_real_code_bezout_new_coefficientfirst) + (ge_representation_imaginary_code_bezout_new_coefficientfirst)) + ((ge_representation_imaginary_code_bezout_new_coefficientfirst) + (ge_representation_imaginary_code_bezout_new_coefficientfirst))) /\ ((exists ge_balance_positive_bezout_new_coefficientfirstreal ge_balance_negative_bezout_new_coefficientfirstreal. (((((ge_representation_real_code_bezout_new_coefficientfirst) = 2 * (ge_balance_positive_bezout_new_coefficientfirstreal) /\ (ge_balance_negative_bezout_new_coefficientfirstreal) = 0) \/ exists ge_signed_half_bezout_new_coefficientfirstrealdecode. (((ge_representation_real_code_bezout_new_coefficientfirst) = 2 * ge_signed_half_bezout_new_coefficientfirstrealdecode + 1 /\ (ge_balance_positive_bezout_new_coefficientfirstreal) = 0) /\ (ge_balance_negative_bezout_new_coefficientfirstreal) = S ge_signed_half_bezout_new_coefficientfirstrealdecode))) /\ ((ge_first_rp_bezout_new_coefficient) + ge_balance_negative_bezout_new_coefficientfirstreal = (ge_first_rn_bezout_new_coefficient) + ge_balance_positive_bezout_new_coefficientfirstreal))) /\ (exists ge_balance_positive_bezout_new_coefficientfirstimaginary ge_balance_negative_bezout_new_coefficientfirstimaginary. (((((ge_representation_imaginary_code_bezout_new_coefficientfirst) = 2 * (ge_balance_positive_bezout_new_coefficientfirstimaginary) /\ (ge_balance_negative_bezout_new_coefficientfirstimaginary) = 0) \/ exists ge_signed_half_bezout_new_coefficientfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_new_coefficientfirst) = 2 * ge_signed_half_bezout_new_coefficientfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_new_coefficientfirstimaginary) = 0) /\ (ge_balance_negative_bezout_new_coefficientfirstimaginary) = S ge_signed_half_bezout_new_coefficientfirstimaginarydecode))) /\ ((ge_first_ip_bezout_new_coefficient) + ge_balance_negative_bezout_new_coefficientfirstimaginary = (ge_first_in_bezout_new_coefficient) + ge_balance_positive_bezout_new_coefficientfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_new_coefficientsecond ge_representation_imaginary_code_bezout_new_coefficientsecond. (((x3) = ((ge_representation_real_code_bezout_new_coefficientsecond) + (ge_representation_imaginary_code_bezout_new_coefficientsecond)) * S ((ge_representation_real_code_bezout_new_coefficientsecond) + (ge_representation_imaginary_code_bezout_new_coefficientsecond)) + ((ge_representation_imaginary_code_bezout_new_coefficientsecond) + (ge_representation_imaginary_code_bezout_new_coefficientsecond))) /\ ((exists ge_balance_positive_bezout_new_coefficientsecondreal ge_balance_negative_bezout_new_coefficientsecondreal. (((((ge_representation_real_code_bezout_new_coefficientsecond) = 2 * (ge_balance_positive_bezout_new_coefficientsecondreal) /\ (ge_balance_negative_bezout_new_coefficientsecondreal) = 0) \/ exists ge_signed_half_bezout_new_coefficientsecondrealdecode. (((ge_representation_real_code_bezout_new_coefficientsecond) = 2 * ge_signed_half_bezout_new_coefficientsecondrealdecode + 1 /\ (ge_balance_positive_bezout_new_coefficientsecondreal) = 0) /\ (ge_balance_negative_bezout_new_coefficientsecondreal) = S ge_signed_half_bezout_new_coefficientsecondrealdecode))) /\ ((ge_second_rp_bezout_new_coefficient) + ge_balance_negative_bezout_new_coefficientsecondreal = (ge_second_rn_bezout_new_coefficient) + ge_balance_positive_bezout_new_coefficientsecondreal))) /\ (exists ge_balance_positive_bezout_new_coefficientsecondimaginary ge_balance_negative_bezout_new_coefficientsecondimaginary. (((((ge_representation_imaginary_code_bezout_new_coefficientsecond) = 2 * (ge_balance_positive_bezout_new_coefficientsecondimaginary) /\ (ge_balance_negative_bezout_new_coefficientsecondimaginary) = 0) \/ exists ge_signed_half_bezout_new_coefficientsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_new_coefficientsecond) = 2 * ge_signed_half_bezout_new_coefficientsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_new_coefficientsecondimaginary) = 0) /\ (ge_balance_negative_bezout_new_coefficientsecondimaginary) = S ge_signed_half_bezout_new_coefficientsecondimaginarydecode))) /\ ((ge_second_ip_bezout_new_coefficient) + ge_balance_negative_bezout_new_coefficientsecondimaginary = (ge_second_in_bezout_new_coefficient) + ge_balance_positive_bezout_new_coefficientsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_new_coefficientoutput ge_representation_imaginary_code_bezout_new_coefficientoutput. (((u) = ((ge_representation_real_code_bezout_new_coefficientoutput) + (ge_representation_imaginary_code_bezout_new_coefficientoutput)) * S ((ge_representation_real_code_bezout_new_coefficientoutput) + (ge_representation_imaginary_code_bezout_new_coefficientoutput)) + ((ge_representation_imaginary_code_bezout_new_coefficientoutput) + (ge_representation_imaginary_code_bezout_new_coefficientoutput))) /\ ((exists ge_balance_positive_bezout_new_coefficientoutputreal ge_balance_negative_bezout_new_coefficientoutputreal. (((((ge_representation_real_code_bezout_new_coefficientoutput) = 2 * (ge_balance_positive_bezout_new_coefficientoutputreal) /\ (ge_balance_negative_bezout_new_coefficientoutputreal) = 0) \/ exists ge_signed_half_bezout_new_coefficientoutputrealdecode. (((ge_representation_real_code_bezout_new_coefficientoutput) = 2 * ge_signed_half_bezout_new_coefficientoutputrealdecode + 1 /\ (ge_balance_positive_bezout_new_coefficientoutputreal) = 0) /\ (ge_balance_negative_bezout_new_coefficientoutputreal) = S ge_signed_half_bezout_new_coefficientoutputrealdecode))) /\ ((((ge_first_rp_bezout_new_coefficient) + (ge_second_rp_bezout_new_coefficient))) + ge_balance_negative_bezout_new_coefficientoutputreal = (((ge_first_rn_bezout_new_coefficient) + (ge_second_rn_bezout_new_coefficient))) + ge_balance_positive_bezout_new_coefficientoutputreal))) /\ (exists ge_balance_positive_bezout_new_coefficientoutputimaginary ge_balance_negative_bezout_new_coefficientoutputimaginary. (((((ge_representation_imaginary_code_bezout_new_coefficientoutput) = 2 * (ge_balance_positive_bezout_new_coefficientoutputimaginary) /\ (ge_balance_negative_bezout_new_coefficientoutputimaginary) = 0) \/ exists ge_signed_half_bezout_new_coefficientoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_new_coefficientoutput) = 2 * ge_signed_half_bezout_new_coefficientoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_new_coefficientoutputimaginary) = 0) /\ (ge_balance_negative_bezout_new_coefficientoutputimaginary) = S ge_signed_half_bezout_new_coefficientoutputimaginarydecode))) /\ ((((ge_first_ip_bezout_new_coefficient) + (ge_second_ip_bezout_new_coefficient))) + ge_balance_negative_bezout_new_coefficientoutputimaginary = (((ge_first_in_bezout_new_coefficient) + (ge_second_in_bezout_new_coefficient))) + ge_balance_positive_bezout_new_coefficientoutputimaginary)))))))))
  32. 0032specialize gaussian_subtract_exists (u)
  33. 0033specialize gaussian_subtract_exists (x3)
  34. 0034apply gaussian_subtract_exists
  35. 0035specialize gaussian_multiply_input_right_valid (b)
  36. 0036specialize gaussian_multiply_input_right_valid (u)
  37. 0037specialize gaussian_multiply_input_right_valid (x1)
  38. 0038apply gaussian_multiply_input_right_valid
  39. 0039exact hbez_witness_witness_left
  40. 0040specialize gaussian_multiply_output_valid (q)
  41. 0041specialize gaussian_multiply_output_valid (v)
  42. 0042specialize gaussian_multiply_output_valid (x3)
  43. 0043apply gaussian_multiply_output_valid
  44. 0044exact hqv_witness
  45. 0045cases hw
  46. 0046have hPv : exists w. (exists ge_first_rp_bezout_Pv ge_first_rn_bezout_Pv ge_first_ip_bezout_Pv ge_first_in_bezout_Pv ge_second_rp_bezout_Pv ge_second_rn_bezout_Pv ge_second_ip_bezout_Pv ge_second_in_bezout_Pv. ((exists ge_representation_real_code_bezout_Pvfirst ge_representation_imaginary_code_bezout_Pvfirst. (((x) = ((ge_representation_real_code_bezout_Pvfirst) + (ge_representation_imaginary_code_bezout_Pvfirst)) * S ((ge_representation_real_code_bezout_Pvfirst) + (ge_representation_imaginary_code_bezout_Pvfirst)) + ((ge_representation_imaginary_code_bezout_Pvfirst) + (ge_representation_imaginary_code_bezout_Pvfirst))) /\ ((exists ge_balance_positive_bezout_Pvfirstreal ge_balance_negative_bezout_Pvfirstreal. (((((ge_representation_real_code_bezout_Pvfirst) = 2 * (ge_balance_positive_bezout_Pvfirstreal) /\ (ge_balance_negative_bezout_Pvfirstreal) = 0) \/ exists ge_signed_half_bezout_Pvfirstrealdecode. (((ge_representation_real_code_bezout_Pvfirst) = 2 * ge_signed_half_bezout_Pvfirstrealdecode + 1 /\ (ge_balance_positive_bezout_Pvfirstreal) = 0) /\ (ge_balance_negative_bezout_Pvfirstreal) = S ge_signed_half_bezout_Pvfirstrealdecode))) /\ ((ge_first_rp_bezout_Pv) + ge_balance_negative_bezout_Pvfirstreal = (ge_first_rn_bezout_Pv) + ge_balance_positive_bezout_Pvfirstreal))) /\ (exists ge_balance_positive_bezout_Pvfirstimaginary ge_balance_negative_bezout_Pvfirstimaginary. (((((ge_representation_imaginary_code_bezout_Pvfirst) = 2 * (ge_balance_positive_bezout_Pvfirstimaginary) /\ (ge_balance_negative_bezout_Pvfirstimaginary) = 0) \/ exists ge_signed_half_bezout_Pvfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_Pvfirst) = 2 * ge_signed_half_bezout_Pvfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_Pvfirstimaginary) = 0) /\ (ge_balance_negative_bezout_Pvfirstimaginary) = S ge_signed_half_bezout_Pvfirstimaginarydecode))) /\ ((ge_first_ip_bezout_Pv) + ge_balance_negative_bezout_Pvfirstimaginary = (ge_first_in_bezout_Pv) + ge_balance_positive_bezout_Pvfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_Pvsecond ge_representation_imaginary_code_bezout_Pvsecond. (((v) = ((ge_representation_real_code_bezout_Pvsecond) + (ge_representation_imaginary_code_bezout_Pvsecond)) * S ((ge_representation_real_code_bezout_Pvsecond) + (ge_representation_imaginary_code_bezout_Pvsecond)) + ((ge_representation_imaginary_code_bezout_Pvsecond) + (ge_representation_imaginary_code_bezout_Pvsecond))) /\ ((exists ge_balance_positive_bezout_Pvsecondreal ge_balance_negative_bezout_Pvsecondreal. (((((ge_representation_real_code_bezout_Pvsecond) = 2 * (ge_balance_positive_bezout_Pvsecondreal) /\ (ge_balance_negative_bezout_Pvsecondreal) = 0) \/ exists ge_signed_half_bezout_Pvsecondrealdecode. (((ge_representation_real_code_bezout_Pvsecond) = 2 * ge_signed_half_bezout_Pvsecondrealdecode + 1 /\ (ge_balance_positive_bezout_Pvsecondreal) = 0) /\ (ge_balance_negative_bezout_Pvsecondreal) = S ge_signed_half_bezout_Pvsecondrealdecode))) /\ ((ge_second_rp_bezout_Pv) + ge_balance_negative_bezout_Pvsecondreal = (ge_second_rn_bezout_Pv) + ge_balance_positive_bezout_Pvsecondreal))) /\ (exists ge_balance_positive_bezout_Pvsecondimaginary ge_balance_negative_bezout_Pvsecondimaginary. (((((ge_representation_imaginary_code_bezout_Pvsecond) = 2 * (ge_balance_positive_bezout_Pvsecondimaginary) /\ (ge_balance_negative_bezout_Pvsecondimaginary) = 0) \/ exists ge_signed_half_bezout_Pvsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_Pvsecond) = 2 * ge_signed_half_bezout_Pvsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_Pvsecondimaginary) = 0) /\ (ge_balance_negative_bezout_Pvsecondimaginary) = S ge_signed_half_bezout_Pvsecondimaginarydecode))) /\ ((ge_second_ip_bezout_Pv) + ge_balance_negative_bezout_Pvsecondimaginary = (ge_second_in_bezout_Pv) + ge_balance_positive_bezout_Pvsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_Pvoutput ge_representation_imaginary_code_bezout_Pvoutput. (((w) = ((ge_representation_real_code_bezout_Pvoutput) + (ge_representation_imaginary_code_bezout_Pvoutput)) * S ((ge_representation_real_code_bezout_Pvoutput) + (ge_representation_imaginary_code_bezout_Pvoutput)) + ((ge_representation_imaginary_code_bezout_Pvoutput) + (ge_representation_imaginary_code_bezout_Pvoutput))) /\ ((exists ge_balance_positive_bezout_Pvoutputreal ge_balance_negative_bezout_Pvoutputreal. (((((ge_representation_real_code_bezout_Pvoutput) = 2 * (ge_balance_positive_bezout_Pvoutputreal) /\ (ge_balance_negative_bezout_Pvoutputreal) = 0) \/ exists ge_signed_half_bezout_Pvoutputrealdecode. (((ge_representation_real_code_bezout_Pvoutput) = 2 * ge_signed_half_bezout_Pvoutputrealdecode + 1 /\ (ge_balance_positive_bezout_Pvoutputreal) = 0) /\ (ge_balance_negative_bezout_Pvoutputreal) = S ge_signed_half_bezout_Pvoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_Pv) * (ge_second_rp_bezout_Pv))) + (((ge_first_rn_bezout_Pv) * (ge_second_rn_bezout_Pv))))) + (((((ge_first_ip_bezout_Pv) * (ge_second_in_bezout_Pv))) + (((ge_first_in_bezout_Pv) * (ge_second_ip_bezout_Pv))))))) + ge_balance_negative_bezout_Pvoutputreal = (((((((ge_first_rp_bezout_Pv) * (ge_second_rn_bezout_Pv))) + (((ge_first_rn_bezout_Pv) * (ge_second_rp_bezout_Pv))))) + (((((ge_first_ip_bezout_Pv) * (ge_second_ip_bezout_Pv))) + (((ge_first_in_bezout_Pv) * (ge_second_in_bezout_Pv))))))) + ge_balance_positive_bezout_Pvoutputreal))) /\ (exists ge_balance_positive_bezout_Pvoutputimaginary ge_balance_negative_bezout_Pvoutputimaginary. (((((ge_representation_imaginary_code_bezout_Pvoutput) = 2 * (ge_balance_positive_bezout_Pvoutputimaginary) /\ (ge_balance_negative_bezout_Pvoutputimaginary) = 0) \/ exists ge_signed_half_bezout_Pvoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_Pvoutput) = 2 * ge_signed_half_bezout_Pvoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_Pvoutputimaginary) = 0) /\ (ge_balance_negative_bezout_Pvoutputimaginary) = S ge_signed_half_bezout_Pvoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_Pv) * (ge_second_ip_bezout_Pv))) + (((ge_first_rn_bezout_Pv) * (ge_second_in_bezout_Pv))))) + (((((ge_first_ip_bezout_Pv) * (ge_second_rp_bezout_Pv))) + (((ge_first_in_bezout_Pv) * (ge_second_rn_bezout_Pv))))))) + ge_balance_negative_bezout_Pvoutputimaginary = (((((((ge_first_rp_bezout_Pv) * (ge_second_in_bezout_Pv))) + (((ge_first_rn_bezout_Pv) * (ge_second_ip_bezout_Pv))))) + (((((ge_first_ip_bezout_Pv) * (ge_second_rn_bezout_Pv))) + (((ge_first_in_bezout_Pv) * (ge_second_rp_bezout_Pv))))))) + ge_balance_positive_bezout_Pvoutputimaginary)))))))))
  47. 0047specialize gaussian_multiply_exists (x)
  48. 0048specialize gaussian_multiply_exists (v)
  49. 0049apply gaussian_multiply_exists
  50. 0050specialize gaussian_multiply_output_valid (b)
  51. 0051specialize gaussian_multiply_output_valid (q)
  52. 0052specialize gaussian_multiply_output_valid (x)
  53. 0053apply gaussian_multiply_output_valid
  54. 0054exact heq_witness_left
  55. 0055specialize gaussian_multiply_input_right_valid (r)
  56. 0056specialize gaussian_multiply_input_right_valid (v)
  57. 0057specialize gaussian_multiply_input_right_valid (x2)
  58. 0058apply gaussian_multiply_input_right_valid
  59. 0059exact hbez_witness_witness_right_left
  60. 0060cases hPv
  61. 0061have hAv : exists w. (exists ge_first_rp_bezout_Av ge_first_rn_bezout_Av ge_first_ip_bezout_Av ge_first_in_bezout_Av ge_second_rp_bezout_Av ge_second_rn_bezout_Av ge_second_ip_bezout_Av ge_second_in_bezout_Av. ((exists ge_representation_real_code_bezout_Avfirst ge_representation_imaginary_code_bezout_Avfirst. (((a) = ((ge_representation_real_code_bezout_Avfirst) + (ge_representation_imaginary_code_bezout_Avfirst)) * S ((ge_representation_real_code_bezout_Avfirst) + (ge_representation_imaginary_code_bezout_Avfirst)) + ((ge_representation_imaginary_code_bezout_Avfirst) + (ge_representation_imaginary_code_bezout_Avfirst))) /\ ((exists ge_balance_positive_bezout_Avfirstreal ge_balance_negative_bezout_Avfirstreal. (((((ge_representation_real_code_bezout_Avfirst) = 2 * (ge_balance_positive_bezout_Avfirstreal) /\ (ge_balance_negative_bezout_Avfirstreal) = 0) \/ exists ge_signed_half_bezout_Avfirstrealdecode. (((ge_representation_real_code_bezout_Avfirst) = 2 * ge_signed_half_bezout_Avfirstrealdecode + 1 /\ (ge_balance_positive_bezout_Avfirstreal) = 0) /\ (ge_balance_negative_bezout_Avfirstreal) = S ge_signed_half_bezout_Avfirstrealdecode))) /\ ((ge_first_rp_bezout_Av) + ge_balance_negative_bezout_Avfirstreal = (ge_first_rn_bezout_Av) + ge_balance_positive_bezout_Avfirstreal))) /\ (exists ge_balance_positive_bezout_Avfirstimaginary ge_balance_negative_bezout_Avfirstimaginary. (((((ge_representation_imaginary_code_bezout_Avfirst) = 2 * (ge_balance_positive_bezout_Avfirstimaginary) /\ (ge_balance_negative_bezout_Avfirstimaginary) = 0) \/ exists ge_signed_half_bezout_Avfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_Avfirst) = 2 * ge_signed_half_bezout_Avfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_Avfirstimaginary) = 0) /\ (ge_balance_negative_bezout_Avfirstimaginary) = S ge_signed_half_bezout_Avfirstimaginarydecode))) /\ ((ge_first_ip_bezout_Av) + ge_balance_negative_bezout_Avfirstimaginary = (ge_first_in_bezout_Av) + ge_balance_positive_bezout_Avfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_Avsecond ge_representation_imaginary_code_bezout_Avsecond. (((v) = ((ge_representation_real_code_bezout_Avsecond) + (ge_representation_imaginary_code_bezout_Avsecond)) * S ((ge_representation_real_code_bezout_Avsecond) + (ge_representation_imaginary_code_bezout_Avsecond)) + ((ge_representation_imaginary_code_bezout_Avsecond) + (ge_representation_imaginary_code_bezout_Avsecond))) /\ ((exists ge_balance_positive_bezout_Avsecondreal ge_balance_negative_bezout_Avsecondreal. (((((ge_representation_real_code_bezout_Avsecond) = 2 * (ge_balance_positive_bezout_Avsecondreal) /\ (ge_balance_negative_bezout_Avsecondreal) = 0) \/ exists ge_signed_half_bezout_Avsecondrealdecode. (((ge_representation_real_code_bezout_Avsecond) = 2 * ge_signed_half_bezout_Avsecondrealdecode + 1 /\ (ge_balance_positive_bezout_Avsecondreal) = 0) /\ (ge_balance_negative_bezout_Avsecondreal) = S ge_signed_half_bezout_Avsecondrealdecode))) /\ ((ge_second_rp_bezout_Av) + ge_balance_negative_bezout_Avsecondreal = (ge_second_rn_bezout_Av) + ge_balance_positive_bezout_Avsecondreal))) /\ (exists ge_balance_positive_bezout_Avsecondimaginary ge_balance_negative_bezout_Avsecondimaginary. (((((ge_representation_imaginary_code_bezout_Avsecond) = 2 * (ge_balance_positive_bezout_Avsecondimaginary) /\ (ge_balance_negative_bezout_Avsecondimaginary) = 0) \/ exists ge_signed_half_bezout_Avsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_Avsecond) = 2 * ge_signed_half_bezout_Avsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_Avsecondimaginary) = 0) /\ (ge_balance_negative_bezout_Avsecondimaginary) = S ge_signed_half_bezout_Avsecondimaginarydecode))) /\ ((ge_second_ip_bezout_Av) + ge_balance_negative_bezout_Avsecondimaginary = (ge_second_in_bezout_Av) + ge_balance_positive_bezout_Avsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_Avoutput ge_representation_imaginary_code_bezout_Avoutput. (((w) = ((ge_representation_real_code_bezout_Avoutput) + (ge_representation_imaginary_code_bezout_Avoutput)) * S ((ge_representation_real_code_bezout_Avoutput) + (ge_representation_imaginary_code_bezout_Avoutput)) + ((ge_representation_imaginary_code_bezout_Avoutput) + (ge_representation_imaginary_code_bezout_Avoutput))) /\ ((exists ge_balance_positive_bezout_Avoutputreal ge_balance_negative_bezout_Avoutputreal. (((((ge_representation_real_code_bezout_Avoutput) = 2 * (ge_balance_positive_bezout_Avoutputreal) /\ (ge_balance_negative_bezout_Avoutputreal) = 0) \/ exists ge_signed_half_bezout_Avoutputrealdecode. (((ge_representation_real_code_bezout_Avoutput) = 2 * ge_signed_half_bezout_Avoutputrealdecode + 1 /\ (ge_balance_positive_bezout_Avoutputreal) = 0) /\ (ge_balance_negative_bezout_Avoutputreal) = S ge_signed_half_bezout_Avoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_Av) * (ge_second_rp_bezout_Av))) + (((ge_first_rn_bezout_Av) * (ge_second_rn_bezout_Av))))) + (((((ge_first_ip_bezout_Av) * (ge_second_in_bezout_Av))) + (((ge_first_in_bezout_Av) * (ge_second_ip_bezout_Av))))))) + ge_balance_negative_bezout_Avoutputreal = (((((((ge_first_rp_bezout_Av) * (ge_second_rn_bezout_Av))) + (((ge_first_rn_bezout_Av) * (ge_second_rp_bezout_Av))))) + (((((ge_first_ip_bezout_Av) * (ge_second_ip_bezout_Av))) + (((ge_first_in_bezout_Av) * (ge_second_in_bezout_Av))))))) + ge_balance_positive_bezout_Avoutputreal))) /\ (exists ge_balance_positive_bezout_Avoutputimaginary ge_balance_negative_bezout_Avoutputimaginary. (((((ge_representation_imaginary_code_bezout_Avoutput) = 2 * (ge_balance_positive_bezout_Avoutputimaginary) /\ (ge_balance_negative_bezout_Avoutputimaginary) = 0) \/ exists ge_signed_half_bezout_Avoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_Avoutput) = 2 * ge_signed_half_bezout_Avoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_Avoutputimaginary) = 0) /\ (ge_balance_negative_bezout_Avoutputimaginary) = S ge_signed_half_bezout_Avoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_Av) * (ge_second_ip_bezout_Av))) + (((ge_first_rn_bezout_Av) * (ge_second_in_bezout_Av))))) + (((((ge_first_ip_bezout_Av) * (ge_second_rp_bezout_Av))) + (((ge_first_in_bezout_Av) * (ge_second_rn_bezout_Av))))))) + ge_balance_negative_bezout_Avoutputimaginary = (((((((ge_first_rp_bezout_Av) * (ge_second_in_bezout_Av))) + (((ge_first_rn_bezout_Av) * (ge_second_ip_bezout_Av))))) + (((((ge_first_ip_bezout_Av) * (ge_second_rn_bezout_Av))) + (((ge_first_in_bezout_Av) * (ge_second_rp_bezout_Av))))))) + ge_balance_positive_bezout_Avoutputimaginary)))))))))
  62. 0062specialize gaussian_multiply_exists (a)
  63. 0063specialize gaussian_multiply_exists (v)
  64. 0064apply gaussian_multiply_exists
  65. 0065specialize gaussian_add_output_valid (x)
  66. 0066specialize gaussian_add_output_valid (r)
  67. 0067specialize gaussian_add_output_valid (a)
  68. 0068apply gaussian_add_output_valid
  69. 0069exact heq_witness_right
  70. 0070specialize gaussian_multiply_input_right_valid (r)
  71. 0071specialize gaussian_multiply_input_right_valid (v)
  72. 0072specialize gaussian_multiply_input_right_valid (x2)
  73. 0073apply gaussian_multiply_input_right_valid
  74. 0074exact hbez_witness_witness_right_left
  75. 0075cases hAv
  76. 0076have hBw : exists w. (exists ge_first_rp_bezout_Bw ge_first_rn_bezout_Bw ge_first_ip_bezout_Bw ge_first_in_bezout_Bw ge_second_rp_bezout_Bw ge_second_rn_bezout_Bw ge_second_ip_bezout_Bw ge_second_in_bezout_Bw. ((exists ge_representation_real_code_bezout_Bwfirst ge_representation_imaginary_code_bezout_Bwfirst. (((b) = ((ge_representation_real_code_bezout_Bwfirst) + (ge_representation_imaginary_code_bezout_Bwfirst)) * S ((ge_representation_real_code_bezout_Bwfirst) + (ge_representation_imaginary_code_bezout_Bwfirst)) + ((ge_representation_imaginary_code_bezout_Bwfirst) + (ge_representation_imaginary_code_bezout_Bwfirst))) /\ ((exists ge_balance_positive_bezout_Bwfirstreal ge_balance_negative_bezout_Bwfirstreal. (((((ge_representation_real_code_bezout_Bwfirst) = 2 * (ge_balance_positive_bezout_Bwfirstreal) /\ (ge_balance_negative_bezout_Bwfirstreal) = 0) \/ exists ge_signed_half_bezout_Bwfirstrealdecode. (((ge_representation_real_code_bezout_Bwfirst) = 2 * ge_signed_half_bezout_Bwfirstrealdecode + 1 /\ (ge_balance_positive_bezout_Bwfirstreal) = 0) /\ (ge_balance_negative_bezout_Bwfirstreal) = S ge_signed_half_bezout_Bwfirstrealdecode))) /\ ((ge_first_rp_bezout_Bw) + ge_balance_negative_bezout_Bwfirstreal = (ge_first_rn_bezout_Bw) + ge_balance_positive_bezout_Bwfirstreal))) /\ (exists ge_balance_positive_bezout_Bwfirstimaginary ge_balance_negative_bezout_Bwfirstimaginary. (((((ge_representation_imaginary_code_bezout_Bwfirst) = 2 * (ge_balance_positive_bezout_Bwfirstimaginary) /\ (ge_balance_negative_bezout_Bwfirstimaginary) = 0) \/ exists ge_signed_half_bezout_Bwfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_Bwfirst) = 2 * ge_signed_half_bezout_Bwfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_Bwfirstimaginary) = 0) /\ (ge_balance_negative_bezout_Bwfirstimaginary) = S ge_signed_half_bezout_Bwfirstimaginarydecode))) /\ ((ge_first_ip_bezout_Bw) + ge_balance_negative_bezout_Bwfirstimaginary = (ge_first_in_bezout_Bw) + ge_balance_positive_bezout_Bwfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_Bwsecond ge_representation_imaginary_code_bezout_Bwsecond. (((x4) = ((ge_representation_real_code_bezout_Bwsecond) + (ge_representation_imaginary_code_bezout_Bwsecond)) * S ((ge_representation_real_code_bezout_Bwsecond) + (ge_representation_imaginary_code_bezout_Bwsecond)) + ((ge_representation_imaginary_code_bezout_Bwsecond) + (ge_representation_imaginary_code_bezout_Bwsecond))) /\ ((exists ge_balance_positive_bezout_Bwsecondreal ge_balance_negative_bezout_Bwsecondreal. (((((ge_representation_real_code_bezout_Bwsecond) = 2 * (ge_balance_positive_bezout_Bwsecondreal) /\ (ge_balance_negative_bezout_Bwsecondreal) = 0) \/ exists ge_signed_half_bezout_Bwsecondrealdecode. (((ge_representation_real_code_bezout_Bwsecond) = 2 * ge_signed_half_bezout_Bwsecondrealdecode + 1 /\ (ge_balance_positive_bezout_Bwsecondreal) = 0) /\ (ge_balance_negative_bezout_Bwsecondreal) = S ge_signed_half_bezout_Bwsecondrealdecode))) /\ ((ge_second_rp_bezout_Bw) + ge_balance_negative_bezout_Bwsecondreal = (ge_second_rn_bezout_Bw) + ge_balance_positive_bezout_Bwsecondreal))) /\ (exists ge_balance_positive_bezout_Bwsecondimaginary ge_balance_negative_bezout_Bwsecondimaginary. (((((ge_representation_imaginary_code_bezout_Bwsecond) = 2 * (ge_balance_positive_bezout_Bwsecondimaginary) /\ (ge_balance_negative_bezout_Bwsecondimaginary) = 0) \/ exists ge_signed_half_bezout_Bwsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_Bwsecond) = 2 * ge_signed_half_bezout_Bwsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_Bwsecondimaginary) = 0) /\ (ge_balance_negative_bezout_Bwsecondimaginary) = S ge_signed_half_bezout_Bwsecondimaginarydecode))) /\ ((ge_second_ip_bezout_Bw) + ge_balance_negative_bezout_Bwsecondimaginary = (ge_second_in_bezout_Bw) + ge_balance_positive_bezout_Bwsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_Bwoutput ge_representation_imaginary_code_bezout_Bwoutput. (((w) = ((ge_representation_real_code_bezout_Bwoutput) + (ge_representation_imaginary_code_bezout_Bwoutput)) * S ((ge_representation_real_code_bezout_Bwoutput) + (ge_representation_imaginary_code_bezout_Bwoutput)) + ((ge_representation_imaginary_code_bezout_Bwoutput) + (ge_representation_imaginary_code_bezout_Bwoutput))) /\ ((exists ge_balance_positive_bezout_Bwoutputreal ge_balance_negative_bezout_Bwoutputreal. (((((ge_representation_real_code_bezout_Bwoutput) = 2 * (ge_balance_positive_bezout_Bwoutputreal) /\ (ge_balance_negative_bezout_Bwoutputreal) = 0) \/ exists ge_signed_half_bezout_Bwoutputrealdecode. (((ge_representation_real_code_bezout_Bwoutput) = 2 * ge_signed_half_bezout_Bwoutputrealdecode + 1 /\ (ge_balance_positive_bezout_Bwoutputreal) = 0) /\ (ge_balance_negative_bezout_Bwoutputreal) = S ge_signed_half_bezout_Bwoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_Bw) * (ge_second_rp_bezout_Bw))) + (((ge_first_rn_bezout_Bw) * (ge_second_rn_bezout_Bw))))) + (((((ge_first_ip_bezout_Bw) * (ge_second_in_bezout_Bw))) + (((ge_first_in_bezout_Bw) * (ge_second_ip_bezout_Bw))))))) + ge_balance_negative_bezout_Bwoutputreal = (((((((ge_first_rp_bezout_Bw) * (ge_second_rn_bezout_Bw))) + (((ge_first_rn_bezout_Bw) * (ge_second_rp_bezout_Bw))))) + (((((ge_first_ip_bezout_Bw) * (ge_second_ip_bezout_Bw))) + (((ge_first_in_bezout_Bw) * (ge_second_in_bezout_Bw))))))) + ge_balance_positive_bezout_Bwoutputreal))) /\ (exists ge_balance_positive_bezout_Bwoutputimaginary ge_balance_negative_bezout_Bwoutputimaginary. (((((ge_representation_imaginary_code_bezout_Bwoutput) = 2 * (ge_balance_positive_bezout_Bwoutputimaginary) /\ (ge_balance_negative_bezout_Bwoutputimaginary) = 0) \/ exists ge_signed_half_bezout_Bwoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_Bwoutput) = 2 * ge_signed_half_bezout_Bwoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_Bwoutputimaginary) = 0) /\ (ge_balance_negative_bezout_Bwoutputimaginary) = S ge_signed_half_bezout_Bwoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_Bw) * (ge_second_ip_bezout_Bw))) + (((ge_first_rn_bezout_Bw) * (ge_second_in_bezout_Bw))))) + (((((ge_first_ip_bezout_Bw) * (ge_second_rp_bezout_Bw))) + (((ge_first_in_bezout_Bw) * (ge_second_rn_bezout_Bw))))))) + ge_balance_negative_bezout_Bwoutputimaginary = (((((((ge_first_rp_bezout_Bw) * (ge_second_in_bezout_Bw))) + (((ge_first_rn_bezout_Bw) * (ge_second_ip_bezout_Bw))))) + (((((ge_first_ip_bezout_Bw) * (ge_second_rn_bezout_Bw))) + (((ge_first_in_bezout_Bw) * (ge_second_rp_bezout_Bw))))))) + ge_balance_positive_bezout_Bwoutputimaginary)))))))))
  77. 0077specialize gaussian_multiply_exists (b)
  78. 0078specialize gaussian_multiply_exists (x4)
  79. 0079apply gaussian_multiply_exists
  80. 0080specialize gaussian_multiply_input_left_valid (b)
  81. 0081specialize gaussian_multiply_input_left_valid (q)
  82. 0082specialize gaussian_multiply_input_left_valid (x)
  83. 0083apply gaussian_multiply_input_left_valid
  84. 0084exact heq_witness_left
  85. 0085specialize gaussian_add_input_left_valid (x4)
  86. 0086specialize gaussian_add_input_left_valid (x3)
  87. 0087specialize gaussian_add_input_left_valid (u)
  88. 0088apply gaussian_add_input_left_valid
  89. 0089exact hw_witness
  90. 0090cases hBw
  91. 0091have hBqv : exists ge_first_rp_bezout_Bqv ge_first_rn_bezout_Bqv ge_first_ip_bezout_Bqv ge_first_in_bezout_Bqv ge_second_rp_bezout_Bqv ge_second_rn_bezout_Bqv ge_second_ip_bezout_Bqv ge_second_in_bezout_Bqv. ((exists ge_representation_real_code_bezout_Bqvfirst ge_representation_imaginary_code_bezout_Bqvfirst. (((b) = ((ge_representation_real_code_bezout_Bqvfirst) + (ge_representation_imaginary_code_bezout_Bqvfirst)) * S ((ge_representation_real_code_bezout_Bqvfirst) + (ge_representation_imaginary_code_bezout_Bqvfirst)) + ((ge_representation_imaginary_code_bezout_Bqvfirst) + (ge_representation_imaginary_code_bezout_Bqvfirst))) /\ ((exists ge_balance_positive_bezout_Bqvfirstreal ge_balance_negative_bezout_Bqvfirstreal. (((((ge_representation_real_code_bezout_Bqvfirst) = 2 * (ge_balance_positive_bezout_Bqvfirstreal) /\ (ge_balance_negative_bezout_Bqvfirstreal) = 0) \/ exists ge_signed_half_bezout_Bqvfirstrealdecode. (((ge_representation_real_code_bezout_Bqvfirst) = 2 * ge_signed_half_bezout_Bqvfirstrealdecode + 1 /\ (ge_balance_positive_bezout_Bqvfirstreal) = 0) /\ (ge_balance_negative_bezout_Bqvfirstreal) = S ge_signed_half_bezout_Bqvfirstrealdecode))) /\ ((ge_first_rp_bezout_Bqv) + ge_balance_negative_bezout_Bqvfirstreal = (ge_first_rn_bezout_Bqv) + ge_balance_positive_bezout_Bqvfirstreal))) /\ (exists ge_balance_positive_bezout_Bqvfirstimaginary ge_balance_negative_bezout_Bqvfirstimaginary. (((((ge_representation_imaginary_code_bezout_Bqvfirst) = 2 * (ge_balance_positive_bezout_Bqvfirstimaginary) /\ (ge_balance_negative_bezout_Bqvfirstimaginary) = 0) \/ exists ge_signed_half_bezout_Bqvfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_Bqvfirst) = 2 * ge_signed_half_bezout_Bqvfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_Bqvfirstimaginary) = 0) /\ (ge_balance_negative_bezout_Bqvfirstimaginary) = S ge_signed_half_bezout_Bqvfirstimaginarydecode))) /\ ((ge_first_ip_bezout_Bqv) + ge_balance_negative_bezout_Bqvfirstimaginary = (ge_first_in_bezout_Bqv) + ge_balance_positive_bezout_Bqvfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_Bqvsecond ge_representation_imaginary_code_bezout_Bqvsecond. (((x3) = ((ge_representation_real_code_bezout_Bqvsecond) + (ge_representation_imaginary_code_bezout_Bqvsecond)) * S ((ge_representation_real_code_bezout_Bqvsecond) + (ge_representation_imaginary_code_bezout_Bqvsecond)) + ((ge_representation_imaginary_code_bezout_Bqvsecond) + (ge_representation_imaginary_code_bezout_Bqvsecond))) /\ ((exists ge_balance_positive_bezout_Bqvsecondreal ge_balance_negative_bezout_Bqvsecondreal. (((((ge_representation_real_code_bezout_Bqvsecond) = 2 * (ge_balance_positive_bezout_Bqvsecondreal) /\ (ge_balance_negative_bezout_Bqvsecondreal) = 0) \/ exists ge_signed_half_bezout_Bqvsecondrealdecode. (((ge_representation_real_code_bezout_Bqvsecond) = 2 * ge_signed_half_bezout_Bqvsecondrealdecode + 1 /\ (ge_balance_positive_bezout_Bqvsecondreal) = 0) /\ (ge_balance_negative_bezout_Bqvsecondreal) = S ge_signed_half_bezout_Bqvsecondrealdecode))) /\ ((ge_second_rp_bezout_Bqv) + ge_balance_negative_bezout_Bqvsecondreal = (ge_second_rn_bezout_Bqv) + ge_balance_positive_bezout_Bqvsecondreal))) /\ (exists ge_balance_positive_bezout_Bqvsecondimaginary ge_balance_negative_bezout_Bqvsecondimaginary. (((((ge_representation_imaginary_code_bezout_Bqvsecond) = 2 * (ge_balance_positive_bezout_Bqvsecondimaginary) /\ (ge_balance_negative_bezout_Bqvsecondimaginary) = 0) \/ exists ge_signed_half_bezout_Bqvsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_Bqvsecond) = 2 * ge_signed_half_bezout_Bqvsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_Bqvsecondimaginary) = 0) /\ (ge_balance_negative_bezout_Bqvsecondimaginary) = S ge_signed_half_bezout_Bqvsecondimaginarydecode))) /\ ((ge_second_ip_bezout_Bqv) + ge_balance_negative_bezout_Bqvsecondimaginary = (ge_second_in_bezout_Bqv) + ge_balance_positive_bezout_Bqvsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_Bqvoutput ge_representation_imaginary_code_bezout_Bqvoutput. (((x5) = ((ge_representation_real_code_bezout_Bqvoutput) + (ge_representation_imaginary_code_bezout_Bqvoutput)) * S ((ge_representation_real_code_bezout_Bqvoutput) + (ge_representation_imaginary_code_bezout_Bqvoutput)) + ((ge_representation_imaginary_code_bezout_Bqvoutput) + (ge_representation_imaginary_code_bezout_Bqvoutput))) /\ ((exists ge_balance_positive_bezout_Bqvoutputreal ge_balance_negative_bezout_Bqvoutputreal. (((((ge_representation_real_code_bezout_Bqvoutput) = 2 * (ge_balance_positive_bezout_Bqvoutputreal) /\ (ge_balance_negative_bezout_Bqvoutputreal) = 0) \/ exists ge_signed_half_bezout_Bqvoutputrealdecode. (((ge_representation_real_code_bezout_Bqvoutput) = 2 * ge_signed_half_bezout_Bqvoutputrealdecode + 1 /\ (ge_balance_positive_bezout_Bqvoutputreal) = 0) /\ (ge_balance_negative_bezout_Bqvoutputreal) = S ge_signed_half_bezout_Bqvoutputrealdecode))) /\ ((((((((ge_first_rp_bezout_Bqv) * (ge_second_rp_bezout_Bqv))) + (((ge_first_rn_bezout_Bqv) * (ge_second_rn_bezout_Bqv))))) + (((((ge_first_ip_bezout_Bqv) * (ge_second_in_bezout_Bqv))) + (((ge_first_in_bezout_Bqv) * (ge_second_ip_bezout_Bqv))))))) + ge_balance_negative_bezout_Bqvoutputreal = (((((((ge_first_rp_bezout_Bqv) * (ge_second_rn_bezout_Bqv))) + (((ge_first_rn_bezout_Bqv) * (ge_second_rp_bezout_Bqv))))) + (((((ge_first_ip_bezout_Bqv) * (ge_second_ip_bezout_Bqv))) + (((ge_first_in_bezout_Bqv) * (ge_second_in_bezout_Bqv))))))) + ge_balance_positive_bezout_Bqvoutputreal))) /\ (exists ge_balance_positive_bezout_Bqvoutputimaginary ge_balance_negative_bezout_Bqvoutputimaginary. (((((ge_representation_imaginary_code_bezout_Bqvoutput) = 2 * (ge_balance_positive_bezout_Bqvoutputimaginary) /\ (ge_balance_negative_bezout_Bqvoutputimaginary) = 0) \/ exists ge_signed_half_bezout_Bqvoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_Bqvoutput) = 2 * ge_signed_half_bezout_Bqvoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_Bqvoutputimaginary) = 0) /\ (ge_balance_negative_bezout_Bqvoutputimaginary) = S ge_signed_half_bezout_Bqvoutputimaginarydecode))) /\ ((((((((ge_first_rp_bezout_Bqv) * (ge_second_ip_bezout_Bqv))) + (((ge_first_rn_bezout_Bqv) * (ge_second_in_bezout_Bqv))))) + (((((ge_first_ip_bezout_Bqv) * (ge_second_rp_bezout_Bqv))) + (((ge_first_in_bezout_Bqv) * (ge_second_rn_bezout_Bqv))))))) + ge_balance_negative_bezout_Bqvoutputimaginary = (((((((ge_first_rp_bezout_Bqv) * (ge_second_in_bezout_Bqv))) + (((ge_first_rn_bezout_Bqv) * (ge_second_ip_bezout_Bqv))))) + (((((ge_first_ip_bezout_Bqv) * (ge_second_rn_bezout_Bqv))) + (((ge_first_in_bezout_Bqv) * (ge_second_rp_bezout_Bqv))))))) + ge_balance_positive_bezout_Bqvoutputimaginary))))))))
  92. 0092specialize gaussian_multiply_associative (b)
  93. 0093specialize gaussian_multiply_associative (q)
  94. 0094specialize gaussian_multiply_associative (v)
  95. 0095specialize gaussian_multiply_associative (x)
  96. 0096specialize gaussian_multiply_associative (x3)
  97. 0097specialize gaussian_multiply_associative (x5)
  98. 0098apply gaussian_multiply_associative
  99. 0099exact heq_witness_left
  100. 0100exact hPv_witness
  101. 0101exact hqv_witness
  102. 0102have hfirstsum : exists ge_first_rp_bezout_dividend_expansion ge_first_rn_bezout_dividend_expansion ge_first_ip_bezout_dividend_expansion ge_first_in_bezout_dividend_expansion ge_second_rp_bezout_dividend_expansion ge_second_rn_bezout_dividend_expansion ge_second_ip_bezout_dividend_expansion ge_second_in_bezout_dividend_expansion. ((exists ge_representation_real_code_bezout_dividend_expansionfirst ge_representation_imaginary_code_bezout_dividend_expansionfirst. (((x5) = ((ge_representation_real_code_bezout_dividend_expansionfirst) + (ge_representation_imaginary_code_bezout_dividend_expansionfirst)) * S ((ge_representation_real_code_bezout_dividend_expansionfirst) + (ge_representation_imaginary_code_bezout_dividend_expansionfirst)) + ((ge_representation_imaginary_code_bezout_dividend_expansionfirst) + (ge_representation_imaginary_code_bezout_dividend_expansionfirst))) /\ ((exists ge_balance_positive_bezout_dividend_expansionfirstreal ge_balance_negative_bezout_dividend_expansionfirstreal. (((((ge_representation_real_code_bezout_dividend_expansionfirst) = 2 * (ge_balance_positive_bezout_dividend_expansionfirstreal) /\ (ge_balance_negative_bezout_dividend_expansionfirstreal) = 0) \/ exists ge_signed_half_bezout_dividend_expansionfirstrealdecode. (((ge_representation_real_code_bezout_dividend_expansionfirst) = 2 * ge_signed_half_bezout_dividend_expansionfirstrealdecode + 1 /\ (ge_balance_positive_bezout_dividend_expansionfirstreal) = 0) /\ (ge_balance_negative_bezout_dividend_expansionfirstreal) = S ge_signed_half_bezout_dividend_expansionfirstrealdecode))) /\ ((ge_first_rp_bezout_dividend_expansion) + ge_balance_negative_bezout_dividend_expansionfirstreal = (ge_first_rn_bezout_dividend_expansion) + ge_balance_positive_bezout_dividend_expansionfirstreal))) /\ (exists ge_balance_positive_bezout_dividend_expansionfirstimaginary ge_balance_negative_bezout_dividend_expansionfirstimaginary. (((((ge_representation_imaginary_code_bezout_dividend_expansionfirst) = 2 * (ge_balance_positive_bezout_dividend_expansionfirstimaginary) /\ (ge_balance_negative_bezout_dividend_expansionfirstimaginary) = 0) \/ exists ge_signed_half_bezout_dividend_expansionfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_dividend_expansionfirst) = 2 * ge_signed_half_bezout_dividend_expansionfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividend_expansionfirstimaginary) = 0) /\ (ge_balance_negative_bezout_dividend_expansionfirstimaginary) = S ge_signed_half_bezout_dividend_expansionfirstimaginarydecode))) /\ ((ge_first_ip_bezout_dividend_expansion) + ge_balance_negative_bezout_dividend_expansionfirstimaginary = (ge_first_in_bezout_dividend_expansion) + ge_balance_positive_bezout_dividend_expansionfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_dividend_expansionsecond ge_representation_imaginary_code_bezout_dividend_expansionsecond. (((x2) = ((ge_representation_real_code_bezout_dividend_expansionsecond) + (ge_representation_imaginary_code_bezout_dividend_expansionsecond)) * S ((ge_representation_real_code_bezout_dividend_expansionsecond) + (ge_representation_imaginary_code_bezout_dividend_expansionsecond)) + ((ge_representation_imaginary_code_bezout_dividend_expansionsecond) + (ge_representation_imaginary_code_bezout_dividend_expansionsecond))) /\ ((exists ge_balance_positive_bezout_dividend_expansionsecondreal ge_balance_negative_bezout_dividend_expansionsecondreal. (((((ge_representation_real_code_bezout_dividend_expansionsecond) = 2 * (ge_balance_positive_bezout_dividend_expansionsecondreal) /\ (ge_balance_negative_bezout_dividend_expansionsecondreal) = 0) \/ exists ge_signed_half_bezout_dividend_expansionsecondrealdecode. (((ge_representation_real_code_bezout_dividend_expansionsecond) = 2 * ge_signed_half_bezout_dividend_expansionsecondrealdecode + 1 /\ (ge_balance_positive_bezout_dividend_expansionsecondreal) = 0) /\ (ge_balance_negative_bezout_dividend_expansionsecondreal) = S ge_signed_half_bezout_dividend_expansionsecondrealdecode))) /\ ((ge_second_rp_bezout_dividend_expansion) + ge_balance_negative_bezout_dividend_expansionsecondreal = (ge_second_rn_bezout_dividend_expansion) + ge_balance_positive_bezout_dividend_expansionsecondreal))) /\ (exists ge_balance_positive_bezout_dividend_expansionsecondimaginary ge_balance_negative_bezout_dividend_expansionsecondimaginary. (((((ge_representation_imaginary_code_bezout_dividend_expansionsecond) = 2 * (ge_balance_positive_bezout_dividend_expansionsecondimaginary) /\ (ge_balance_negative_bezout_dividend_expansionsecondimaginary) = 0) \/ exists ge_signed_half_bezout_dividend_expansionsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_dividend_expansionsecond) = 2 * ge_signed_half_bezout_dividend_expansionsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividend_expansionsecondimaginary) = 0) /\ (ge_balance_negative_bezout_dividend_expansionsecondimaginary) = S ge_signed_half_bezout_dividend_expansionsecondimaginarydecode))) /\ ((ge_second_ip_bezout_dividend_expansion) + ge_balance_negative_bezout_dividend_expansionsecondimaginary = (ge_second_in_bezout_dividend_expansion) + ge_balance_positive_bezout_dividend_expansionsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_dividend_expansionoutput ge_representation_imaginary_code_bezout_dividend_expansionoutput. (((x6) = ((ge_representation_real_code_bezout_dividend_expansionoutput) + (ge_representation_imaginary_code_bezout_dividend_expansionoutput)) * S ((ge_representation_real_code_bezout_dividend_expansionoutput) + (ge_representation_imaginary_code_bezout_dividend_expansionoutput)) + ((ge_representation_imaginary_code_bezout_dividend_expansionoutput) + (ge_representation_imaginary_code_bezout_dividend_expansionoutput))) /\ ((exists ge_balance_positive_bezout_dividend_expansionoutputreal ge_balance_negative_bezout_dividend_expansionoutputreal. (((((ge_representation_real_code_bezout_dividend_expansionoutput) = 2 * (ge_balance_positive_bezout_dividend_expansionoutputreal) /\ (ge_balance_negative_bezout_dividend_expansionoutputreal) = 0) \/ exists ge_signed_half_bezout_dividend_expansionoutputrealdecode. (((ge_representation_real_code_bezout_dividend_expansionoutput) = 2 * ge_signed_half_bezout_dividend_expansionoutputrealdecode + 1 /\ (ge_balance_positive_bezout_dividend_expansionoutputreal) = 0) /\ (ge_balance_negative_bezout_dividend_expansionoutputreal) = S ge_signed_half_bezout_dividend_expansionoutputrealdecode))) /\ ((((ge_first_rp_bezout_dividend_expansion) + (ge_second_rp_bezout_dividend_expansion))) + ge_balance_negative_bezout_dividend_expansionoutputreal = (((ge_first_rn_bezout_dividend_expansion) + (ge_second_rn_bezout_dividend_expansion))) + ge_balance_positive_bezout_dividend_expansionoutputreal))) /\ (exists ge_balance_positive_bezout_dividend_expansionoutputimaginary ge_balance_negative_bezout_dividend_expansionoutputimaginary. (((((ge_representation_imaginary_code_bezout_dividend_expansionoutput) = 2 * (ge_balance_positive_bezout_dividend_expansionoutputimaginary) /\ (ge_balance_negative_bezout_dividend_expansionoutputimaginary) = 0) \/ exists ge_signed_half_bezout_dividend_expansionoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_dividend_expansionoutput) = 2 * ge_signed_half_bezout_dividend_expansionoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_dividend_expansionoutputimaginary) = 0) /\ (ge_balance_negative_bezout_dividend_expansionoutputimaginary) = S ge_signed_half_bezout_dividend_expansionoutputimaginarydecode))) /\ ((((ge_first_ip_bezout_dividend_expansion) + (ge_second_ip_bezout_dividend_expansion))) + ge_balance_negative_bezout_dividend_expansionoutputimaginary = (((ge_first_in_bezout_dividend_expansion) + (ge_second_in_bezout_dividend_expansion))) + ge_balance_positive_bezout_dividend_expansionoutputimaginary))))))))
  103. 0103specialize gaussian_multiply_add_distribute_right (v)
  104. 0104specialize gaussian_multiply_add_distribute_right (x)
  105. 0105specialize gaussian_multiply_add_distribute_right (r)
  106. 0106specialize gaussian_multiply_add_distribute_right (a)
  107. 0107specialize gaussian_multiply_add_distribute_right (x5)
  108. 0108specialize gaussian_multiply_add_distribute_right (x2)
  109. 0109specialize gaussian_multiply_add_distribute_right (x6)
  110. 0110apply gaussian_multiply_add_distribute_right
  111. 0111exact heq_witness_right
  112. 0112exact hPv_witness
  113. 0113exact hbez_witness_witness_right_left
  114. 0114exact hAv_witness
  115. 0115have hsecondsum : exists ge_first_rp_bezout_coefficient_expansion ge_first_rn_bezout_coefficient_expansion ge_first_ip_bezout_coefficient_expansion ge_first_in_bezout_coefficient_expansion ge_second_rp_bezout_coefficient_expansion ge_second_rn_bezout_coefficient_expansion ge_second_ip_bezout_coefficient_expansion ge_second_in_bezout_coefficient_expansion. ((exists ge_representation_real_code_bezout_coefficient_expansionfirst ge_representation_imaginary_code_bezout_coefficient_expansionfirst. (((x7) = ((ge_representation_real_code_bezout_coefficient_expansionfirst) + (ge_representation_imaginary_code_bezout_coefficient_expansionfirst)) * S ((ge_representation_real_code_bezout_coefficient_expansionfirst) + (ge_representation_imaginary_code_bezout_coefficient_expansionfirst)) + ((ge_representation_imaginary_code_bezout_coefficient_expansionfirst) + (ge_representation_imaginary_code_bezout_coefficient_expansionfirst))) /\ ((exists ge_balance_positive_bezout_coefficient_expansionfirstreal ge_balance_negative_bezout_coefficient_expansionfirstreal. (((((ge_representation_real_code_bezout_coefficient_expansionfirst) = 2 * (ge_balance_positive_bezout_coefficient_expansionfirstreal) /\ (ge_balance_negative_bezout_coefficient_expansionfirstreal) = 0) \/ exists ge_signed_half_bezout_coefficient_expansionfirstrealdecode. (((ge_representation_real_code_bezout_coefficient_expansionfirst) = 2 * ge_signed_half_bezout_coefficient_expansionfirstrealdecode + 1 /\ (ge_balance_positive_bezout_coefficient_expansionfirstreal) = 0) /\ (ge_balance_negative_bezout_coefficient_expansionfirstreal) = S ge_signed_half_bezout_coefficient_expansionfirstrealdecode))) /\ ((ge_first_rp_bezout_coefficient_expansion) + ge_balance_negative_bezout_coefficient_expansionfirstreal = (ge_first_rn_bezout_coefficient_expansion) + ge_balance_positive_bezout_coefficient_expansionfirstreal))) /\ (exists ge_balance_positive_bezout_coefficient_expansionfirstimaginary ge_balance_negative_bezout_coefficient_expansionfirstimaginary. (((((ge_representation_imaginary_code_bezout_coefficient_expansionfirst) = 2 * (ge_balance_positive_bezout_coefficient_expansionfirstimaginary) /\ (ge_balance_negative_bezout_coefficient_expansionfirstimaginary) = 0) \/ exists ge_signed_half_bezout_coefficient_expansionfirstimaginarydecode. (((ge_representation_imaginary_code_bezout_coefficient_expansionfirst) = 2 * ge_signed_half_bezout_coefficient_expansionfirstimaginarydecode + 1 /\ (ge_balance_positive_bezout_coefficient_expansionfirstimaginary) = 0) /\ (ge_balance_negative_bezout_coefficient_expansionfirstimaginary) = S ge_signed_half_bezout_coefficient_expansionfirstimaginarydecode))) /\ ((ge_first_ip_bezout_coefficient_expansion) + ge_balance_negative_bezout_coefficient_expansionfirstimaginary = (ge_first_in_bezout_coefficient_expansion) + ge_balance_positive_bezout_coefficient_expansionfirstimaginary)))))) /\ ((exists ge_representation_real_code_bezout_coefficient_expansionsecond ge_representation_imaginary_code_bezout_coefficient_expansionsecond. (((x5) = ((ge_representation_real_code_bezout_coefficient_expansionsecond) + (ge_representation_imaginary_code_bezout_coefficient_expansionsecond)) * S ((ge_representation_real_code_bezout_coefficient_expansionsecond) + (ge_representation_imaginary_code_bezout_coefficient_expansionsecond)) + ((ge_representation_imaginary_code_bezout_coefficient_expansionsecond) + (ge_representation_imaginary_code_bezout_coefficient_expansionsecond))) /\ ((exists ge_balance_positive_bezout_coefficient_expansionsecondreal ge_balance_negative_bezout_coefficient_expansionsecondreal. (((((ge_representation_real_code_bezout_coefficient_expansionsecond) = 2 * (ge_balance_positive_bezout_coefficient_expansionsecondreal) /\ (ge_balance_negative_bezout_coefficient_expansionsecondreal) = 0) \/ exists ge_signed_half_bezout_coefficient_expansionsecondrealdecode. (((ge_representation_real_code_bezout_coefficient_expansionsecond) = 2 * ge_signed_half_bezout_coefficient_expansionsecondrealdecode + 1 /\ (ge_balance_positive_bezout_coefficient_expansionsecondreal) = 0) /\ (ge_balance_negative_bezout_coefficient_expansionsecondreal) = S ge_signed_half_bezout_coefficient_expansionsecondrealdecode))) /\ ((ge_second_rp_bezout_coefficient_expansion) + ge_balance_negative_bezout_coefficient_expansionsecondreal = (ge_second_rn_bezout_coefficient_expansion) + ge_balance_positive_bezout_coefficient_expansionsecondreal))) /\ (exists ge_balance_positive_bezout_coefficient_expansionsecondimaginary ge_balance_negative_bezout_coefficient_expansionsecondimaginary. (((((ge_representation_imaginary_code_bezout_coefficient_expansionsecond) = 2 * (ge_balance_positive_bezout_coefficient_expansionsecondimaginary) /\ (ge_balance_negative_bezout_coefficient_expansionsecondimaginary) = 0) \/ exists ge_signed_half_bezout_coefficient_expansionsecondimaginarydecode. (((ge_representation_imaginary_code_bezout_coefficient_expansionsecond) = 2 * ge_signed_half_bezout_coefficient_expansionsecondimaginarydecode + 1 /\ (ge_balance_positive_bezout_coefficient_expansionsecondimaginary) = 0) /\ (ge_balance_negative_bezout_coefficient_expansionsecondimaginary) = S ge_signed_half_bezout_coefficient_expansionsecondimaginarydecode))) /\ ((ge_second_ip_bezout_coefficient_expansion) + ge_balance_negative_bezout_coefficient_expansionsecondimaginary = (ge_second_in_bezout_coefficient_expansion) + ge_balance_positive_bezout_coefficient_expansionsecondimaginary)))))) /\ (exists ge_representation_real_code_bezout_coefficient_expansionoutput ge_representation_imaginary_code_bezout_coefficient_expansionoutput. (((x1) = ((ge_representation_real_code_bezout_coefficient_expansionoutput) + (ge_representation_imaginary_code_bezout_coefficient_expansionoutput)) * S ((ge_representation_real_code_bezout_coefficient_expansionoutput) + (ge_representation_imaginary_code_bezout_coefficient_expansionoutput)) + ((ge_representation_imaginary_code_bezout_coefficient_expansionoutput) + (ge_representation_imaginary_code_bezout_coefficient_expansionoutput))) /\ ((exists ge_balance_positive_bezout_coefficient_expansionoutputreal ge_balance_negative_bezout_coefficient_expansionoutputreal. (((((ge_representation_real_code_bezout_coefficient_expansionoutput) = 2 * (ge_balance_positive_bezout_coefficient_expansionoutputreal) /\ (ge_balance_negative_bezout_coefficient_expansionoutputreal) = 0) \/ exists ge_signed_half_bezout_coefficient_expansionoutputrealdecode. (((ge_representation_real_code_bezout_coefficient_expansionoutput) = 2 * ge_signed_half_bezout_coefficient_expansionoutputrealdecode + 1 /\ (ge_balance_positive_bezout_coefficient_expansionoutputreal) = 0) /\ (ge_balance_negative_bezout_coefficient_expansionoutputreal) = S ge_signed_half_bezout_coefficient_expansionoutputrealdecode))) /\ ((((ge_first_rp_bezout_coefficient_expansion) + (ge_second_rp_bezout_coefficient_expansion))) + ge_balance_negative_bezout_coefficient_expansionoutputreal = (((ge_first_rn_bezout_coefficient_expansion) + (ge_second_rn_bezout_coefficient_expansion))) + ge_balance_positive_bezout_coefficient_expansionoutputreal))) /\ (exists ge_balance_positive_bezout_coefficient_expansionoutputimaginary ge_balance_negative_bezout_coefficient_expansionoutputimaginary. (((((ge_representation_imaginary_code_bezout_coefficient_expansionoutput) = 2 * (ge_balance_positive_bezout_coefficient_expansionoutputimaginary) /\ (ge_balance_negative_bezout_coefficient_expansionoutputimaginary) = 0) \/ exists ge_signed_half_bezout_coefficient_expansionoutputimaginarydecode. (((ge_representation_imaginary_code_bezout_coefficient_expansionoutput) = 2 * ge_signed_half_bezout_coefficient_expansionoutputimaginarydecode + 1 /\ (ge_balance_positive_bezout_coefficient_expansionoutputimaginary) = 0) /\ (ge_balance_negative_bezout_coefficient_expansionoutputimaginary) = S ge_signed_half_bezout_coefficient_expansionoutputimaginarydecode))) /\ ((((ge_first_ip_bezout_coefficient_expansion) + (ge_second_ip_bezout_coefficient_expansion))) + ge_balance_negative_bezout_coefficient_expansionoutputimaginary = (((ge_first_in_bezout_coefficient_expansion) + (ge_second_in_bezout_coefficient_expansion))) + ge_balance_positive_bezout_coefficient_expansionoutputimaginary))))))))
  116. 0116specialize gaussian_multiply_add_distribute (b)
  117. 0117specialize gaussian_multiply_add_distribute (x4)
  118. 0118specialize gaussian_multiply_add_distribute (x3)
  119. 0119specialize gaussian_multiply_add_distribute (u)
  120. 0120specialize gaussian_multiply_add_distribute (x7)
  121. 0121specialize gaussian_multiply_add_distribute (x5)
  122. 0122specialize gaussian_multiply_add_distribute (x1)
  123. 0123apply gaussian_multiply_add_distribute
  124. 0124exact hw_witness
  125. 0125exact hBw_witness
  126. 0126exact hBqv
  127. 0127exact hbez_witness_witness_left
  128. 0128exists (x4)
  129. 0129exists (x6)
  130. 0130exists (x7)
  131. 0131split
  132. 0132exact hAv_witness
  133. 0133split
  134. 0134exact hBw_witness
  135. 0135specialize gaussian_add_commutative (x7)
  136. 0136specialize gaussian_add_commutative (x6)
  137. 0137specialize gaussian_add_commutative (g)
  138. 0138apply gaussian_add_commutative
  139. 0139specialize gaussian_add_associative (x7)
  140. 0140specialize gaussian_add_associative (x5)
  141. 0141specialize gaussian_add_associative (x2)
  142. 0142specialize gaussian_add_associative (x1)
  143. 0143specialize gaussian_add_associative (x6)
  144. 0144specialize gaussian_add_associative (g)
  145. 0145apply gaussian_add_associative
  146. 0146exact hsecondsum
  147. 0147exact hbez_witness_witness_right_right
  148. 0148exact hfirstsum