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 a b c s p q t. (exists ge_first_rp_distribute_sum ge_first_rn_distribute_sum ge_first_ip_distribute_sum ge_first_in_distribute_sum ge_second_rp_distribute_sum ge_second_rn_distribute_sum ge_second_ip_distribute_sum ge_second_in_distribute_sum. ((exists ge_representation_real_code_distribute_sumfirst ge_representation_imaginary_code_distribute_sumfirst. (((b) = ((ge_representation_real_code_distribute_sumfirst) + (ge_representation_imaginary_code_distribute_sumfirst)) * S ((ge_representation_real_code_distribute_sumfirst) + (ge_representation_imaginary_code_distribute_sumfirst)) + ((ge_representation_imaginary_code_distribute_sumfirst) + (ge_representation_imaginary_code_distribute_sumfirst))) /\ ((exists ge_balance_positive_distribute_sumfirstreal ge_balance_negative_distribute_sumfirstreal. (((((ge_representation_real_code_distribute_sumfirst) = 2 * (ge_balance_positive_distribute_sumfirstreal) /\ (ge_balance_negative_distribute_sumfirstreal) = 0) \/ exists ge_signed_half_distribute_sumfirstrealdecode. (((ge_representation_real_code_distribute_sumfirst) = 2 * ge_signed_half_distribute_sumfirstrealdecode + 1 /\ (ge_balance_positive_distribute_sumfirstreal) = 0) /\ (ge_balance_negative_distribute_sumfirstreal) = S ge_signed_half_distribute_sumfirstrealdecode))) /\ ((ge_first_rp_distribute_sum) + ge_balance_negative_distribute_sumfirstreal = (ge_first_rn_distribute_sum) + ge_balance_positive_distribute_sumfirstreal))) /\ (exists ge_balance_positive_distribute_sumfirstimaginary ge_balance_negative_distribute_sumfirstimaginary. (((((ge_representation_imaginary_code_distribute_sumfirst) = 2 * (ge_balance_positive_distribute_sumfirstimaginary) /\ (ge_balance_negative_distribute_sumfirstimaginary) = 0) \/ exists ge_signed_half_distribute_sumfirstimaginarydecode. (((ge_representation_imaginary_code_distribute_sumfirst) = 2 * ge_signed_half_distribute_sumfirstimaginarydecode + 1 /\ (ge_balance_positive_distribute_sumfirstimaginary) = 0) /\ (ge_balance_negative_distribute_sumfirstimaginary) = S ge_signed_half_distribute_sumfirstimaginarydecode))) /\ ((ge_first_ip_distribute_sum) + ge_balance_negative_distribute_sumfirstimaginary = (ge_first_in_distribute_sum) + ge_balance_positive_distribute_sumfirstimaginary)))))) /\ ((exists ge_representation_real_code_distribute_sumsecond ge_representation_imaginary_code_distribute_sumsecond. (((c) = ((ge_representation_real_code_distribute_sumsecond) + (ge_representation_imaginary_code_distribute_sumsecond)) * S ((ge_representation_real_code_distribute_sumsecond) + (ge_representation_imaginary_code_distribute_sumsecond)) + ((ge_representation_imaginary_code_distribute_sumsecond) + (ge_representation_imaginary_code_distribute_sumsecond))) /\ ((exists ge_balance_positive_distribute_sumsecondreal ge_balance_negative_distribute_sumsecondreal. (((((ge_representation_real_code_distribute_sumsecond) = 2 * (ge_balance_positive_distribute_sumsecondreal) /\ (ge_balance_negative_distribute_sumsecondreal) = 0) \/ exists ge_signed_half_distribute_sumsecondrealdecode. (((ge_representation_real_code_distribute_sumsecond) = 2 * ge_signed_half_distribute_sumsecondrealdecode + 1 /\ (ge_balance_positive_distribute_sumsecondreal) = 0) /\ (ge_balance_negative_distribute_sumsecondreal) = S ge_signed_half_distribute_sumsecondrealdecode))) /\ ((ge_second_rp_distribute_sum) + ge_balance_negative_distribute_sumsecondreal = (ge_second_rn_distribute_sum) + ge_balance_positive_distribute_sumsecondreal))) /\ (exists ge_balance_positive_distribute_sumsecondimaginary ge_balance_negative_distribute_sumsecondimaginary. (((((ge_representation_imaginary_code_distribute_sumsecond) = 2 * (ge_balance_positive_distribute_sumsecondimaginary) /\ (ge_balance_negative_distribute_sumsecondimaginary) = 0) \/ exists ge_signed_half_distribute_sumsecondimaginarydecode. (((ge_representation_imaginary_code_distribute_sumsecond) = 2 * ge_signed_half_distribute_sumsecondimaginarydecode + 1 /\ (ge_balance_positive_distribute_sumsecondimaginary) = 0) /\ (ge_balance_negative_distribute_sumsecondimaginary) = S ge_signed_half_distribute_sumsecondimaginarydecode))) /\ ((ge_second_ip_distribute_sum) + ge_balance_negative_distribute_sumsecondimaginary = (ge_second_in_distribute_sum) + ge_balance_positive_distribute_sumsecondimaginary)))))) /\ (exists ge_representation_real_code_distribute_sumoutput ge_representation_imaginary_code_distribute_sumoutput. (((s) = ((ge_representation_real_code_distribute_sumoutput) + (ge_representation_imaginary_code_distribute_sumoutput)) * S ((ge_representation_real_code_distribute_sumoutput) + (ge_representation_imaginary_code_distribute_sumoutput)) + ((ge_representation_imaginary_code_distribute_sumoutput) + (ge_representation_imaginary_code_distribute_sumoutput))) /\ ((exists ge_balance_positive_distribute_sumoutputreal ge_balance_negative_distribute_sumoutputreal. (((((ge_representation_real_code_distribute_sumoutput) = 2 * (ge_balance_positive_distribute_sumoutputreal) /\ (ge_balance_negative_distribute_sumoutputreal) = 0) \/ exists ge_signed_half_distribute_sumoutputrealdecode. (((ge_representation_real_code_distribute_sumoutput) = 2 * ge_signed_half_distribute_sumoutputrealdecode + 1 /\ (ge_balance_positive_distribute_sumoutputreal) = 0) /\ (ge_balance_negative_distribute_sumoutputreal) = S ge_signed_half_distribute_sumoutputrealdecode))) /\ ((((ge_first_rp_distribute_sum) + (ge_second_rp_distribute_sum))) + ge_balance_negative_distribute_sumoutputreal = (((ge_first_rn_distribute_sum) + (ge_second_rn_distribute_sum))) + ge_balance_positive_distribute_sumoutputreal))) /\ (exists ge_balance_positive_distribute_sumoutputimaginary ge_balance_negative_distribute_sumoutputimaginary. (((((ge_representation_imaginary_code_distribute_sumoutput) = 2 * (ge_balance_positive_distribute_sumoutputimaginary) /\ (ge_balance_negative_distribute_sumoutputimaginary) = 0) \/ exists ge_signed_half_distribute_sumoutputimaginarydecode. (((ge_representation_imaginary_code_distribute_sumoutput) = 2 * ge_signed_half_distribute_sumoutputimaginarydecode + 1 /\ (ge_balance_positive_distribute_sumoutputimaginary) = 0) /\ (ge_balance_negative_distribute_sumoutputimaginary) = S ge_signed_half_distribute_sumoutputimaginarydecode))) /\ ((((ge_first_ip_distribute_sum) + (ge_second_ip_distribute_sum))) + ge_balance_negative_distribute_sumoutputimaginary = (((ge_first_in_distribute_sum) + (ge_second_in_distribute_sum))) + ge_balance_positive_distribute_sumoutputimaginary))))))))) -> (exists ge_first_rp_distribute_first ge_first_rn_distribute_first ge_first_ip_distribute_first ge_first_in_distribute_first ge_second_rp_distribute_first ge_second_rn_distribute_first ge_second_ip_distribute_first ge_second_in_distribute_first. ((exists ge_representation_real_code_distribute_firstfirst ge_representation_imaginary_code_distribute_firstfirst. (((a) = ((ge_representation_real_code_distribute_firstfirst) + (ge_representation_imaginary_code_distribute_firstfirst)) * S ((ge_representation_real_code_distribute_firstfirst) + (ge_representation_imaginary_code_distribute_firstfirst)) + ((ge_representation_imaginary_code_distribute_firstfirst) + (ge_representation_imaginary_code_distribute_firstfirst))) /\ ((exists ge_balance_positive_distribute_firstfirstreal ge_balance_negative_distribute_firstfirstreal. (((((ge_representation_real_code_distribute_firstfirst) = 2 * (ge_balance_positive_distribute_firstfirstreal) /\ (ge_balance_negative_distribute_firstfirstreal) = 0) \/ exists ge_signed_half_distribute_firstfirstrealdecode. (((ge_representation_real_code_distribute_firstfirst) = 2 * ge_signed_half_distribute_firstfirstrealdecode + 1 /\ (ge_balance_positive_distribute_firstfirstreal) = 0) /\ (ge_balance_negative_distribute_firstfirstreal) = S ge_signed_half_distribute_firstfirstrealdecode))) /\ ((ge_first_rp_distribute_first) + ge_balance_negative_distribute_firstfirstreal = (ge_first_rn_distribute_first) + ge_balance_positive_distribute_firstfirstreal))) /\ (exists ge_balance_positive_distribute_firstfirstimaginary ge_balance_negative_distribute_firstfirstimaginary. (((((ge_representation_imaginary_code_distribute_firstfirst) = 2 * (ge_balance_positive_distribute_firstfirstimaginary) /\ (ge_balance_negative_distribute_firstfirstimaginary) = 0) \/ exists ge_signed_half_distribute_firstfirstimaginarydecode. (((ge_representation_imaginary_code_distribute_firstfirst) = 2 * ge_signed_half_distribute_firstfirstimaginarydecode + 1 /\ (ge_balance_positive_distribute_firstfirstimaginary) = 0) /\ (ge_balance_negative_distribute_firstfirstimaginary) = S ge_signed_half_distribute_firstfirstimaginarydecode))) /\ ((ge_first_ip_distribute_first) + ge_balance_negative_distribute_firstfirstimaginary = (ge_first_in_distribute_first) + ge_balance_positive_distribute_firstfirstimaginary)))))) /\ ((exists ge_representation_real_code_distribute_firstsecond ge_representation_imaginary_code_distribute_firstsecond. (((b) = ((ge_representation_real_code_distribute_firstsecond) + (ge_representation_imaginary_code_distribute_firstsecond)) * S ((ge_representation_real_code_distribute_firstsecond) + (ge_representation_imaginary_code_distribute_firstsecond)) + ((ge_representation_imaginary_code_distribute_firstsecond) + (ge_representation_imaginary_code_distribute_firstsecond))) /\ ((exists ge_balance_positive_distribute_firstsecondreal ge_balance_negative_distribute_firstsecondreal. (((((ge_representation_real_code_distribute_firstsecond) = 2 * (ge_balance_positive_distribute_firstsecondreal) /\ (ge_balance_negative_distribute_firstsecondreal) = 0) \/ exists ge_signed_half_distribute_firstsecondrealdecode. (((ge_representation_real_code_distribute_firstsecond) = 2 * ge_signed_half_distribute_firstsecondrealdecode + 1 /\ (ge_balance_positive_distribute_firstsecondreal) = 0) /\ (ge_balance_negative_distribute_firstsecondreal) = S ge_signed_half_distribute_firstsecondrealdecode))) /\ ((ge_second_rp_distribute_first) + ge_balance_negative_distribute_firstsecondreal = (ge_second_rn_distribute_first) + ge_balance_positive_distribute_firstsecondreal))) /\ (exists ge_balance_positive_distribute_firstsecondimaginary ge_balance_negative_distribute_firstsecondimaginary. (((((ge_representation_imaginary_code_distribute_firstsecond) = 2 * (ge_balance_positive_distribute_firstsecondimaginary) /\ (ge_balance_negative_distribute_firstsecondimaginary) = 0) \/ exists ge_signed_half_distribute_firstsecondimaginarydecode. (((ge_representation_imaginary_code_distribute_firstsecond) = 2 * ge_signed_half_distribute_firstsecondimaginarydecode + 1 /\ (ge_balance_positive_distribute_firstsecondimaginary) = 0) /\ (ge_balance_negative_distribute_firstsecondimaginary) = S ge_signed_half_distribute_firstsecondimaginarydecode))) /\ ((ge_second_ip_distribute_first) + ge_balance_negative_distribute_firstsecondimaginary = (ge_second_in_distribute_first) + ge_balance_positive_distribute_firstsecondimaginary)))))) /\ (exists ge_representation_real_code_distribute_firstoutput ge_representation_imaginary_code_distribute_firstoutput. (((p) = ((ge_representation_real_code_distribute_firstoutput) + (ge_representation_imaginary_code_distribute_firstoutput)) * S ((ge_representation_real_code_distribute_firstoutput) + (ge_representation_imaginary_code_distribute_firstoutput)) + ((ge_representation_imaginary_code_distribute_firstoutput) + (ge_representation_imaginary_code_distribute_firstoutput))) /\ ((exists ge_balance_positive_distribute_firstoutputreal ge_balance_negative_distribute_firstoutputreal. (((((ge_representation_real_code_distribute_firstoutput) = 2 * (ge_balance_positive_distribute_firstoutputreal) /\ (ge_balance_negative_distribute_firstoutputreal) = 0) \/ exists ge_signed_half_distribute_firstoutputrealdecode. (((ge_representation_real_code_distribute_firstoutput) = 2 * ge_signed_half_distribute_firstoutputrealdecode + 1 /\ (ge_balance_positive_distribute_firstoutputreal) = 0) /\ (ge_balance_negative_distribute_firstoutputreal) = S ge_signed_half_distribute_firstoutputrealdecode))) /\ ((((((((ge_first_rp_distribute_first) * (ge_second_rp_distribute_first))) + (((ge_first_rn_distribute_first) * (ge_second_rn_distribute_first))))) + (((((ge_first_ip_distribute_first) * (ge_second_in_distribute_first))) + (((ge_first_in_distribute_first) * (ge_second_ip_distribute_first))))))) + ge_balance_negative_distribute_firstoutputreal = (((((((ge_first_rp_distribute_first) * (ge_second_rn_distribute_first))) + (((ge_first_rn_distribute_first) * (ge_second_rp_distribute_first))))) + (((((ge_first_ip_distribute_first) * (ge_second_ip_distribute_first))) + (((ge_first_in_distribute_first) * (ge_second_in_distribute_first))))))) + ge_balance_positive_distribute_firstoutputreal))) /\ (exists ge_balance_positive_distribute_firstoutputimaginary ge_balance_negative_distribute_firstoutputimaginary. (((((ge_representation_imaginary_code_distribute_firstoutput) = 2 * (ge_balance_positive_distribute_firstoutputimaginary) /\ (ge_balance_negative_distribute_firstoutputimaginary) = 0) \/ exists ge_signed_half_distribute_firstoutputimaginarydecode. (((ge_representation_imaginary_code_distribute_firstoutput) = 2 * ge_signed_half_distribute_firstoutputimaginarydecode + 1 /\ (ge_balance_positive_distribute_firstoutputimaginary) = 0) /\ (ge_balance_negative_distribute_firstoutputimaginary) = S ge_signed_half_distribute_firstoutputimaginarydecode))) /\ ((((((((ge_first_rp_distribute_first) * (ge_second_ip_distribute_first))) + (((ge_first_rn_distribute_first) * (ge_second_in_distribute_first))))) + (((((ge_first_ip_distribute_first) * (ge_second_rp_distribute_first))) + (((ge_first_in_distribute_first) * (ge_second_rn_distribute_first))))))) + ge_balance_negative_distribute_firstoutputimaginary = (((((((ge_first_rp_distribute_first) * (ge_second_in_distribute_first))) + (((ge_first_rn_distribute_first) * (ge_second_ip_distribute_first))))) + (((((ge_first_ip_distribute_first) * (ge_second_rn_distribute_first))) + (((ge_first_in_distribute_first) * (ge_second_rp_distribute_first))))))) + ge_balance_positive_distribute_firstoutputimaginary))))))))) -> (exists ge_first_rp_distribute_second ge_first_rn_distribute_second ge_first_ip_distribute_second ge_first_in_distribute_second ge_second_rp_distribute_second ge_second_rn_distribute_second ge_second_ip_distribute_second ge_second_in_distribute_second. ((exists ge_representation_real_code_distribute_secondfirst ge_representation_imaginary_code_distribute_secondfirst. (((a) = ((ge_representation_real_code_distribute_secondfirst) + (ge_representation_imaginary_code_distribute_secondfirst)) * S ((ge_representation_real_code_distribute_secondfirst) + (ge_representation_imaginary_code_distribute_secondfirst)) + ((ge_representation_imaginary_code_distribute_secondfirst) + (ge_representation_imaginary_code_distribute_secondfirst))) /\ ((exists ge_balance_positive_distribute_secondfirstreal ge_balance_negative_distribute_secondfirstreal. (((((ge_representation_real_code_distribute_secondfirst) = 2 * (ge_balance_positive_distribute_secondfirstreal) /\ (ge_balance_negative_distribute_secondfirstreal) = 0) \/ exists ge_signed_half_distribute_secondfirstrealdecode. (((ge_representation_real_code_distribute_secondfirst) = 2 * ge_signed_half_distribute_secondfirstrealdecode + 1 /\ (ge_balance_positive_distribute_secondfirstreal) = 0) /\ (ge_balance_negative_distribute_secondfirstreal) = S ge_signed_half_distribute_secondfirstrealdecode))) /\ ((ge_first_rp_distribute_second) + ge_balance_negative_distribute_secondfirstreal = (ge_first_rn_distribute_second) + ge_balance_positive_distribute_secondfirstreal))) /\ (exists ge_balance_positive_distribute_secondfirstimaginary ge_balance_negative_distribute_secondfirstimaginary. (((((ge_representation_imaginary_code_distribute_secondfirst) = 2 * (ge_balance_positive_distribute_secondfirstimaginary) /\ (ge_balance_negative_distribute_secondfirstimaginary) = 0) \/ exists ge_signed_half_distribute_secondfirstimaginarydecode. (((ge_representation_imaginary_code_distribute_secondfirst) = 2 * ge_signed_half_distribute_secondfirstimaginarydecode + 1 /\ (ge_balance_positive_distribute_secondfirstimaginary) = 0) /\ (ge_balance_negative_distribute_secondfirstimaginary) = S ge_signed_half_distribute_secondfirstimaginarydecode))) /\ ((ge_first_ip_distribute_second) + ge_balance_negative_distribute_secondfirstimaginary = (ge_first_in_distribute_second) + ge_balance_positive_distribute_secondfirstimaginary)))))) /\ ((exists ge_representation_real_code_distribute_secondsecond ge_representation_imaginary_code_distribute_secondsecond. (((c) = ((ge_representation_real_code_distribute_secondsecond) + (ge_representation_imaginary_code_distribute_secondsecond)) * S ((ge_representation_real_code_distribute_secondsecond) + (ge_representation_imaginary_code_distribute_secondsecond)) + ((ge_representation_imaginary_code_distribute_secondsecond) + (ge_representation_imaginary_code_distribute_secondsecond))) /\ ((exists ge_balance_positive_distribute_secondsecondreal ge_balance_negative_distribute_secondsecondreal. (((((ge_representation_real_code_distribute_secondsecond) = 2 * (ge_balance_positive_distribute_secondsecondreal) /\ (ge_balance_negative_distribute_secondsecondreal) = 0) \/ exists ge_signed_half_distribute_secondsecondrealdecode. (((ge_representation_real_code_distribute_secondsecond) = 2 * ge_signed_half_distribute_secondsecondrealdecode + 1 /\ (ge_balance_positive_distribute_secondsecondreal) = 0) /\ (ge_balance_negative_distribute_secondsecondreal) = S ge_signed_half_distribute_secondsecondrealdecode))) /\ ((ge_second_rp_distribute_second) + ge_balance_negative_distribute_secondsecondreal = (ge_second_rn_distribute_second) + ge_balance_positive_distribute_secondsecondreal))) /\ (exists ge_balance_positive_distribute_secondsecondimaginary ge_balance_negative_distribute_secondsecondimaginary. (((((ge_representation_imaginary_code_distribute_secondsecond) = 2 * (ge_balance_positive_distribute_secondsecondimaginary) /\ (ge_balance_negative_distribute_secondsecondimaginary) = 0) \/ exists ge_signed_half_distribute_secondsecondimaginarydecode. (((ge_representation_imaginary_code_distribute_secondsecond) = 2 * ge_signed_half_distribute_secondsecondimaginarydecode + 1 /\ (ge_balance_positive_distribute_secondsecondimaginary) = 0) /\ (ge_balance_negative_distribute_secondsecondimaginary) = S ge_signed_half_distribute_secondsecondimaginarydecode))) /\ ((ge_second_ip_distribute_second) + ge_balance_negative_distribute_secondsecondimaginary = (ge_second_in_distribute_second) + ge_balance_positive_distribute_secondsecondimaginary)))))) /\ (exists ge_representation_real_code_distribute_secondoutput ge_representation_imaginary_code_distribute_secondoutput. (((q) = ((ge_representation_real_code_distribute_secondoutput) + (ge_representation_imaginary_code_distribute_secondoutput)) * S ((ge_representation_real_code_distribute_secondoutput) + (ge_representation_imaginary_code_distribute_secondoutput)) + ((ge_representation_imaginary_code_distribute_secondoutput) + (ge_representation_imaginary_code_distribute_secondoutput))) /\ ((exists ge_balance_positive_distribute_secondoutputreal ge_balance_negative_distribute_secondoutputreal. (((((ge_representation_real_code_distribute_secondoutput) = 2 * (ge_balance_positive_distribute_secondoutputreal) /\ (ge_balance_negative_distribute_secondoutputreal) = 0) \/ exists ge_signed_half_distribute_secondoutputrealdecode. (((ge_representation_real_code_distribute_secondoutput) = 2 * ge_signed_half_distribute_secondoutputrealdecode + 1 /\ (ge_balance_positive_distribute_secondoutputreal) = 0) /\ (ge_balance_negative_distribute_secondoutputreal) = S ge_signed_half_distribute_secondoutputrealdecode))) /\ ((((((((ge_first_rp_distribute_second) * (ge_second_rp_distribute_second))) + (((ge_first_rn_distribute_second) * (ge_second_rn_distribute_second))))) + (((((ge_first_ip_distribute_second) * (ge_second_in_distribute_second))) + (((ge_first_in_distribute_second) * (ge_second_ip_distribute_second))))))) + ge_balance_negative_distribute_secondoutputreal = (((((((ge_first_rp_distribute_second) * (ge_second_rn_distribute_second))) + (((ge_first_rn_distribute_second) * (ge_second_rp_distribute_second))))) + (((((ge_first_ip_distribute_second) * (ge_second_ip_distribute_second))) + (((ge_first_in_distribute_second) * (ge_second_in_distribute_second))))))) + ge_balance_positive_distribute_secondoutputreal))) /\ (exists ge_balance_positive_distribute_secondoutputimaginary ge_balance_negative_distribute_secondoutputimaginary. (((((ge_representation_imaginary_code_distribute_secondoutput) = 2 * (ge_balance_positive_distribute_secondoutputimaginary) /\ (ge_balance_negative_distribute_secondoutputimaginary) = 0) \/ exists ge_signed_half_distribute_secondoutputimaginarydecode. (((ge_representation_imaginary_code_distribute_secondoutput) = 2 * ge_signed_half_distribute_secondoutputimaginarydecode + 1 /\ (ge_balance_positive_distribute_secondoutputimaginary) = 0) /\ (ge_balance_negative_distribute_secondoutputimaginary) = S ge_signed_half_distribute_secondoutputimaginarydecode))) /\ ((((((((ge_first_rp_distribute_second) * (ge_second_ip_distribute_second))) + (((ge_first_rn_distribute_second) * (ge_second_in_distribute_second))))) + (((((ge_first_ip_distribute_second) * (ge_second_rp_distribute_second))) + (((ge_first_in_distribute_second) * (ge_second_rn_distribute_second))))))) + ge_balance_negative_distribute_secondoutputimaginary = (((((((ge_first_rp_distribute_second) * (ge_second_in_distribute_second))) + (((ge_first_rn_distribute_second) * (ge_second_ip_distribute_second))))) + (((((ge_first_ip_distribute_second) * (ge_second_rn_distribute_second))) + (((ge_first_in_distribute_second) * (ge_second_rp_distribute_second))))))) + ge_balance_positive_distribute_secondoutputimaginary))))))))) -> (exists ge_first_rp_distribute_total ge_first_rn_distribute_total ge_first_ip_distribute_total ge_first_in_distribute_total ge_second_rp_distribute_total ge_second_rn_distribute_total ge_second_ip_distribute_total ge_second_in_distribute_total. ((exists ge_representation_real_code_distribute_totalfirst ge_representation_imaginary_code_distribute_totalfirst. (((p) = ((ge_representation_real_code_distribute_totalfirst) + (ge_representation_imaginary_code_distribute_totalfirst)) * S ((ge_representation_real_code_distribute_totalfirst) + (ge_representation_imaginary_code_distribute_totalfirst)) + ((ge_representation_imaginary_code_distribute_totalfirst) + (ge_representation_imaginary_code_distribute_totalfirst))) /\ ((exists ge_balance_positive_distribute_totalfirstreal ge_balance_negative_distribute_totalfirstreal. (((((ge_representation_real_code_distribute_totalfirst) = 2 * (ge_balance_positive_distribute_totalfirstreal) /\ (ge_balance_negative_distribute_totalfirstreal) = 0) \/ exists ge_signed_half_distribute_totalfirstrealdecode. (((ge_representation_real_code_distribute_totalfirst) = 2 * ge_signed_half_distribute_totalfirstrealdecode + 1 /\ (ge_balance_positive_distribute_totalfirstreal) = 0) /\ (ge_balance_negative_distribute_totalfirstreal) = S ge_signed_half_distribute_totalfirstrealdecode))) /\ ((ge_first_rp_distribute_total) + ge_balance_negative_distribute_totalfirstreal = (ge_first_rn_distribute_total) + ge_balance_positive_distribute_totalfirstreal))) /\ (exists ge_balance_positive_distribute_totalfirstimaginary ge_balance_negative_distribute_totalfirstimaginary. (((((ge_representation_imaginary_code_distribute_totalfirst) = 2 * (ge_balance_positive_distribute_totalfirstimaginary) /\ (ge_balance_negative_distribute_totalfirstimaginary) = 0) \/ exists ge_signed_half_distribute_totalfirstimaginarydecode. (((ge_representation_imaginary_code_distribute_totalfirst) = 2 * ge_signed_half_distribute_totalfirstimaginarydecode + 1 /\ (ge_balance_positive_distribute_totalfirstimaginary) = 0) /\ (ge_balance_negative_distribute_totalfirstimaginary) = S ge_signed_half_distribute_totalfirstimaginarydecode))) /\ ((ge_first_ip_distribute_total) + ge_balance_negative_distribute_totalfirstimaginary = (ge_first_in_distribute_total) + ge_balance_positive_distribute_totalfirstimaginary)))))) /\ ((exists ge_representation_real_code_distribute_totalsecond ge_representation_imaginary_code_distribute_totalsecond. (((q) = ((ge_representation_real_code_distribute_totalsecond) + (ge_representation_imaginary_code_distribute_totalsecond)) * S ((ge_representation_real_code_distribute_totalsecond) + (ge_representation_imaginary_code_distribute_totalsecond)) + ((ge_representation_imaginary_code_distribute_totalsecond) + (ge_representation_imaginary_code_distribute_totalsecond))) /\ ((exists ge_balance_positive_distribute_totalsecondreal ge_balance_negative_distribute_totalsecondreal. (((((ge_representation_real_code_distribute_totalsecond) = 2 * (ge_balance_positive_distribute_totalsecondreal) /\ (ge_balance_negative_distribute_totalsecondreal) = 0) \/ exists ge_signed_half_distribute_totalsecondrealdecode. (((ge_representation_real_code_distribute_totalsecond) = 2 * ge_signed_half_distribute_totalsecondrealdecode + 1 /\ (ge_balance_positive_distribute_totalsecondreal) = 0) /\ (ge_balance_negative_distribute_totalsecondreal) = S ge_signed_half_distribute_totalsecondrealdecode))) /\ ((ge_second_rp_distribute_total) + ge_balance_negative_distribute_totalsecondreal = (ge_second_rn_distribute_total) + ge_balance_positive_distribute_totalsecondreal))) /\ (exists ge_balance_positive_distribute_totalsecondimaginary ge_balance_negative_distribute_totalsecondimaginary. (((((ge_representation_imaginary_code_distribute_totalsecond) = 2 * (ge_balance_positive_distribute_totalsecondimaginary) /\ (ge_balance_negative_distribute_totalsecondimaginary) = 0) \/ exists ge_signed_half_distribute_totalsecondimaginarydecode. (((ge_representation_imaginary_code_distribute_totalsecond) = 2 * ge_signed_half_distribute_totalsecondimaginarydecode + 1 /\ (ge_balance_positive_distribute_totalsecondimaginary) = 0) /\ (ge_balance_negative_distribute_totalsecondimaginary) = S ge_signed_half_distribute_totalsecondimaginarydecode))) /\ ((ge_second_ip_distribute_total) + ge_balance_negative_distribute_totalsecondimaginary = (ge_second_in_distribute_total) + ge_balance_positive_distribute_totalsecondimaginary)))))) /\ (exists ge_representation_real_code_distribute_totaloutput ge_representation_imaginary_code_distribute_totaloutput. (((t) = ((ge_representation_real_code_distribute_totaloutput) + (ge_representation_imaginary_code_distribute_totaloutput)) * S ((ge_representation_real_code_distribute_totaloutput) + (ge_representation_imaginary_code_distribute_totaloutput)) + ((ge_representation_imaginary_code_distribute_totaloutput) + (ge_representation_imaginary_code_distribute_totaloutput))) /\ ((exists ge_balance_positive_distribute_totaloutputreal ge_balance_negative_distribute_totaloutputreal. (((((ge_representation_real_code_distribute_totaloutput) = 2 * (ge_balance_positive_distribute_totaloutputreal) /\ (ge_balance_negative_distribute_totaloutputreal) = 0) \/ exists ge_signed_half_distribute_totaloutputrealdecode. (((ge_representation_real_code_distribute_totaloutput) = 2 * ge_signed_half_distribute_totaloutputrealdecode + 1 /\ (ge_balance_positive_distribute_totaloutputreal) = 0) /\ (ge_balance_negative_distribute_totaloutputreal) = S ge_signed_half_distribute_totaloutputrealdecode))) /\ ((((ge_first_rp_distribute_total) + (ge_second_rp_distribute_total))) + ge_balance_negative_distribute_totaloutputreal = (((ge_first_rn_distribute_total) + (ge_second_rn_distribute_total))) + ge_balance_positive_distribute_totaloutputreal))) /\ (exists ge_balance_positive_distribute_totaloutputimaginary ge_balance_negative_distribute_totaloutputimaginary. (((((ge_representation_imaginary_code_distribute_totaloutput) = 2 * (ge_balance_positive_distribute_totaloutputimaginary) /\ (ge_balance_negative_distribute_totaloutputimaginary) = 0) \/ exists ge_signed_half_distribute_totaloutputimaginarydecode. (((ge_representation_imaginary_code_distribute_totaloutput) = 2 * ge_signed_half_distribute_totaloutputimaginarydecode + 1 /\ (ge_balance_positive_distribute_totaloutputimaginary) = 0) /\ (ge_balance_negative_distribute_totaloutputimaginary) = S ge_signed_half_distribute_totaloutputimaginarydecode))) /\ ((((ge_first_ip_distribute_total) + (ge_second_ip_distribute_total))) + ge_balance_negative_distribute_totaloutputimaginary = (((ge_first_in_distribute_total) + (ge_second_in_distribute_total))) + ge_balance_positive_distribute_totaloutputimaginary))))))))) -> (exists ge_first_rp_distribute_product ge_first_rn_distribute_product ge_first_ip_distribute_product ge_first_in_distribute_product ge_second_rp_distribute_product ge_second_rn_distribute_product ge_second_ip_distribute_product ge_second_in_distribute_product. ((exists ge_representation_real_code_distribute_productfirst ge_representation_imaginary_code_distribute_productfirst. (((a) = ((ge_representation_real_code_distribute_productfirst) + (ge_representation_imaginary_code_distribute_productfirst)) * S ((ge_representation_real_code_distribute_productfirst) + (ge_representation_imaginary_code_distribute_productfirst)) + ((ge_representation_imaginary_code_distribute_productfirst) + (ge_representation_imaginary_code_distribute_productfirst))) /\ ((exists ge_balance_positive_distribute_productfirstreal ge_balance_negative_distribute_productfirstreal. (((((ge_representation_real_code_distribute_productfirst) = 2 * (ge_balance_positive_distribute_productfirstreal) /\ (ge_balance_negative_distribute_productfirstreal) = 0) \/ exists ge_signed_half_distribute_productfirstrealdecode. (((ge_representation_real_code_distribute_productfirst) = 2 * ge_signed_half_distribute_productfirstrealdecode + 1 /\ (ge_balance_positive_distribute_productfirstreal) = 0) /\ (ge_balance_negative_distribute_productfirstreal) = S ge_signed_half_distribute_productfirstrealdecode))) /\ ((ge_first_rp_distribute_product) + ge_balance_negative_distribute_productfirstreal = (ge_first_rn_distribute_product) + ge_balance_positive_distribute_productfirstreal))) /\ (exists ge_balance_positive_distribute_productfirstimaginary ge_balance_negative_distribute_productfirstimaginary. (((((ge_representation_imaginary_code_distribute_productfirst) = 2 * (ge_balance_positive_distribute_productfirstimaginary) /\ (ge_balance_negative_distribute_productfirstimaginary) = 0) \/ exists ge_signed_half_distribute_productfirstimaginarydecode. (((ge_representation_imaginary_code_distribute_productfirst) = 2 * ge_signed_half_distribute_productfirstimaginarydecode + 1 /\ (ge_balance_positive_distribute_productfirstimaginary) = 0) /\ (ge_balance_negative_distribute_productfirstimaginary) = S ge_signed_half_distribute_productfirstimaginarydecode))) /\ ((ge_first_ip_distribute_product) + ge_balance_negative_distribute_productfirstimaginary = (ge_first_in_distribute_product) + ge_balance_positive_distribute_productfirstimaginary)))))) /\ ((exists ge_representation_real_code_distribute_productsecond ge_representation_imaginary_code_distribute_productsecond. (((s) = ((ge_representation_real_code_distribute_productsecond) + (ge_representation_imaginary_code_distribute_productsecond)) * S ((ge_representation_real_code_distribute_productsecond) + (ge_representation_imaginary_code_distribute_productsecond)) + ((ge_representation_imaginary_code_distribute_productsecond) + (ge_representation_imaginary_code_distribute_productsecond))) /\ ((exists ge_balance_positive_distribute_productsecondreal ge_balance_negative_distribute_productsecondreal. (((((ge_representation_real_code_distribute_productsecond) = 2 * (ge_balance_positive_distribute_productsecondreal) /\ (ge_balance_negative_distribute_productsecondreal) = 0) \/ exists ge_signed_half_distribute_productsecondrealdecode. (((ge_representation_real_code_distribute_productsecond) = 2 * ge_signed_half_distribute_productsecondrealdecode + 1 /\ (ge_balance_positive_distribute_productsecondreal) = 0) /\ (ge_balance_negative_distribute_productsecondreal) = S ge_signed_half_distribute_productsecondrealdecode))) /\ ((ge_second_rp_distribute_product) + ge_balance_negative_distribute_productsecondreal = (ge_second_rn_distribute_product) + ge_balance_positive_distribute_productsecondreal))) /\ (exists ge_balance_positive_distribute_productsecondimaginary ge_balance_negative_distribute_productsecondimaginary. (((((ge_representation_imaginary_code_distribute_productsecond) = 2 * (ge_balance_positive_distribute_productsecondimaginary) /\ (ge_balance_negative_distribute_productsecondimaginary) = 0) \/ exists ge_signed_half_distribute_productsecondimaginarydecode. (((ge_representation_imaginary_code_distribute_productsecond) = 2 * ge_signed_half_distribute_productsecondimaginarydecode + 1 /\ (ge_balance_positive_distribute_productsecondimaginary) = 0) /\ (ge_balance_negative_distribute_productsecondimaginary) = S ge_signed_half_distribute_productsecondimaginarydecode))) /\ ((ge_second_ip_distribute_product) + ge_balance_negative_distribute_productsecondimaginary = (ge_second_in_distribute_product) + ge_balance_positive_distribute_productsecondimaginary)))))) /\ (exists ge_representation_real_code_distribute_productoutput ge_representation_imaginary_code_distribute_productoutput. (((t) = ((ge_representation_real_code_distribute_productoutput) + (ge_representation_imaginary_code_distribute_productoutput)) * S ((ge_representation_real_code_distribute_productoutput) + (ge_representation_imaginary_code_distribute_productoutput)) + ((ge_representation_imaginary_code_distribute_productoutput) + (ge_representation_imaginary_code_distribute_productoutput))) /\ ((exists ge_balance_positive_distribute_productoutputreal ge_balance_negative_distribute_productoutputreal. (((((ge_representation_real_code_distribute_productoutput) = 2 * (ge_balance_positive_distribute_productoutputreal) /\ (ge_balance_negative_distribute_productoutputreal) = 0) \/ exists ge_signed_half_distribute_productoutputrealdecode. (((ge_representation_real_code_distribute_productoutput) = 2 * ge_signed_half_distribute_productoutputrealdecode + 1 /\ (ge_balance_positive_distribute_productoutputreal) = 0) /\ (ge_balance_negative_distribute_productoutputreal) = S ge_signed_half_distribute_productoutputrealdecode))) /\ ((((((((ge_first_rp_distribute_product) * (ge_second_rp_distribute_product))) + (((ge_first_rn_distribute_product) * (ge_second_rn_distribute_product))))) + (((((ge_first_ip_distribute_product) * (ge_second_in_distribute_product))) + (((ge_first_in_distribute_product) * (ge_second_ip_distribute_product))))))) + ge_balance_negative_distribute_productoutputreal = (((((((ge_first_rp_distribute_product) * (ge_second_rn_distribute_product))) + (((ge_first_rn_distribute_product) * (ge_second_rp_distribute_product))))) + (((((ge_first_ip_distribute_product) * (ge_second_ip_distribute_product))) + (((ge_first_in_distribute_product) * (ge_second_in_distribute_product))))))) + ge_balance_positive_distribute_productoutputreal))) /\ (exists ge_balance_positive_distribute_productoutputimaginary ge_balance_negative_distribute_productoutputimaginary. (((((ge_representation_imaginary_code_distribute_productoutput) = 2 * (ge_balance_positive_distribute_productoutputimaginary) /\ (ge_balance_negative_distribute_productoutputimaginary) = 0) \/ exists ge_signed_half_distribute_productoutputimaginarydecode. (((ge_representation_imaginary_code_distribute_productoutput) = 2 * ge_signed_half_distribute_productoutputimaginarydecode + 1 /\ (ge_balance_positive_distribute_productoutputimaginary) = 0) /\ (ge_balance_negative_distribute_productoutputimaginary) = S ge_signed_half_distribute_productoutputimaginarydecode))) /\ ((((((((ge_first_rp_distribute_product) * (ge_second_ip_distribute_product))) + (((ge_first_rn_distribute_product) * (ge_second_in_distribute_product))))) + (((((ge_first_ip_distribute_product) * (ge_second_rp_distribute_product))) + (((ge_first_in_distribute_product) * (ge_second_rn_distribute_product))))))) + ge_balance_negative_distribute_productoutputimaginary = (((((((ge_first_rp_distribute_product) * (ge_second_in_distribute_product))) + (((ge_first_rn_distribute_product) * (ge_second_ip_distribute_product))))) + (((((ge_first_ip_distribute_product) * (ge_second_rn_distribute_product))) + (((ge_first_in_distribute_product) * (ge_second_rp_distribute_product))))))) + ge_balance_positive_distribute_productoutputimaginary)))))))))Constructive proof overview
Generated structural guide
The sum of two actual Gaussian products is the product with their actual summed second factors.
The unchanged tactic script uses 9 declared prerequisites and contains 158 exact native proof lines.
Alpha v34 checked-use · first admitted v30 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
GF0001 gaussian_valid_has_representation GF0007 gaussian_multiply_input_left_valid GF0008 gaussian_multiply_input_right_valid gaussian_multiply_for_representations Alpha theorem; checked-use authorized gaussian_add_for_representations Alpha theorem; checked-use authorized gaussian_multiply_of_representations Alpha theorem; checked-use authorized gaussian_representation_integer_transport Alpha theorem; checked-use authorized gaussian_equal_symmetric Alpha theorem; checked-use authorized GF0036 gaussian_ring_raw_multiply_add_distributiveDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (4)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–11
Work with arbitrary variables or the premises of the current implication.
- L11
intro hPQ
03Establish hAL12–19
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian valid has representation.
- L12
have hA : ∃ rp. ∃ rn. ∃ ip. ∃ inn. ZPairRep(a,rp,rn,ip,inn)Definitions: ZPairRep - L13
specialize gaussian_valid_has_representation (a) - L14
apply gaussian_valid_has_representation - L15
specialize gaussian_multiply_input_left_valid (a) - L16
specialize gaussian_multiply_input_left_valid (b) - L17
specialize gaussian_multiply_input_left_valid (p) - L18
apply gaussian_multiply_input_left_valid - L19
exact hAB
04Separate the logical casesL20–23
05Establish hBL24–31
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian valid has representation.
- L24
have hB : ∃ rp. ∃ rn. ∃ ip. ∃ inn. ZPairRep(b,rp,rn,ip,inn)Definitions: ZPairRep - L25
specialize gaussian_valid_has_representation (b) - L26
apply gaussian_valid_has_representation - L27
specialize gaussian_multiply_input_right_valid (a) - L28
specialize gaussian_multiply_input_right_valid (b) - L29
specialize gaussian_multiply_input_right_valid (p) - L30
apply gaussian_multiply_input_right_valid - L31
exact hAB
06Separate the logical casesL32–35
07Establish hCL36–43
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian valid has representation.
- L36
have hC : ∃ rp. ∃ rn. ∃ ip. ∃ inn. ZPairRep(c,rp,rn,ip,inn)Definitions: ZPairRep - L37
specialize gaussian_valid_has_representation (c) - L38
apply gaussian_valid_has_representation - L39
specialize gaussian_multiply_input_right_valid (a) - L40
specialize gaussian_multiply_input_right_valid (c) - L41
specialize gaussian_multiply_input_right_valid (q) - L42
apply gaussian_multiply_input_right_valid - L43
exact hAC
08Separate the logical casesL44–47
09Establish hpL48–57
Establish this local claim before using it. It is not an additional assumption.
- L48
have hp : ZPairRep(p,x · x4 + x1 · x5 + (x2 · x7 + x3 · x6),x · x5 + x1 · x4 + (x2 · x6 + x3 · x7),x · x6 + x1 · x7 + (x2 · x4 + x3 · x5),x · x7 + x1 · x6 + (x2 · x5 + x3 · x4))Definitions: ZPairRep - L49
specialize gaussian_multiply_for_representations (a) - L50
specialize gaussian_multiply_for_representations (b) - L51
specialize gaussian_multiply_for_representations (p) - L52
specialize gaussian_multiply_for_representations (x) - L53
specialize gaussian_multiply_for_representations (x1) - L54
specialize gaussian_multiply_for_representations (x2) - L55
specialize gaussian_multiply_for_representations (x3) - L56
specialize gaussian_multiply_for_representations (x4) - L57
specialize gaussian_multiply_for_representations (x5)
10Use earlier factsL58–63
Instantiate or apply named facts and discharge the corresponding proof obligations.
11Establish hqL64–73
Establish this local claim before using it. It is not an additional assumption.
- L64
have hq : ZPairRep(q,x · x8 + x1 · x9 + (x2 · x11 + x3 · x10),x · x9 + x1 · x8 + (x2 · x10 + x3 · x11),x · x10 + x1 · x11 + (x2 · x8 + x3 · x9),x · x11 + x1 · x10 + (x2 · x9 + x3 · x8))Definitions: ZPairRep - L65
specialize gaussian_multiply_for_representations (a) - L66
specialize gaussian_multiply_for_representations (c) - L67
specialize gaussian_multiply_for_representations (q) - L68
specialize gaussian_multiply_for_representations (x) - L69
specialize gaussian_multiply_for_representations (x1) - L70
specialize gaussian_multiply_for_representations (x2) - L71
specialize gaussian_multiply_for_representations (x3) - L72
specialize gaussian_multiply_for_representations (x8) - L73
specialize gaussian_multiply_for_representations (x9)
12Use earlier factsL74–79
Instantiate or apply named facts and discharge the corresponding proof obligations.
13Establish hsL80–89
Establish this local claim before using it. It is not an additional assumption.
- L80
have hs : ZPairRep(s,x4 + x8,x5 + x9,x6 + x10,x7 + x11)Definitions: ZPairRep - L81
specialize gaussian_add_for_representations (b) - L82
specialize gaussian_add_for_representations (c) - L83
specialize gaussian_add_for_representations (s) - L84
specialize gaussian_add_for_representations (x4) - L85
specialize gaussian_add_for_representations (x5) - L86
specialize gaussian_add_for_representations (x6) - L87
specialize gaussian_add_for_representations (x7) - L88
specialize gaussian_add_for_representations (x8) - L89
specialize gaussian_add_for_representations (x9)
14Use earlier factsL90–95
Instantiate or apply named facts and discharge the corresponding proof obligations.
15Establish htL96–105
Establish this local claim before using it. It is not an additional assumption.
- L96
have ht : ZPairRep(t,x · x4 + x1 · x5 + (x2 · x7 + x3 · x6) + (x · x8 + x1 · x9 + (x2 · x11 + x3 · x10)),x · x5 + x1 · x4 + (x2 · x6 + x3 · x7) + (x · x9 + x1 · x8 + (x2 · x10 + x3 · x11)),x · x6 + x1 · x7 + (x2 · x4 + x3 · x5) + (x · x10 + x1 · x11 + (x2 · x8 + x3 · x9)),x · x7 + x1 · x6 + (x2 · x5 + x3 · x4) + (x · x11 + x1 · x10 + (x2 · x9 + x3 · x8)))Definitions: ZPairRep - L97
specialize gaussian_add_for_representations (p) - L98
specialize gaussian_add_for_representations (q) - L99
specialize gaussian_add_for_representations (t) - L100
specialize gaussian_add_for_representations (((((((x) * (x4))) + (((x1) * (x5))))) + (((((x2) * (x7))) + (((x3) * (x6))))))) - L101
specialize gaussian_add_for_representations (((((((x) * (x5))) + (((x1) * (x4))))) + (((((x2) * (x6))) + (((x3) * (x7))))))) - L102
specialize gaussian_add_for_representations (((((((x) * (x6))) + (((x1) * (x7))))) + (((((x2) * (x4))) + (((x3) * (x5))))))) - L103
specialize gaussian_add_for_representations (((((((x) * (x7))) + (((x1) * (x6))))) + (((((x2) * (x5))) + (((x3) * (x4))))))) - L104
specialize gaussian_add_for_representations (((((((x) * (x8))) + (((x1) * (x9))))) + (((((x2) * (x11))) + (((x3) * (x10))))))) - L105
specialize gaussian_add_for_representations (((((((x) * (x9))) + (((x1) * (x8))))) + (((((x2) * (x10))) + (((x3) * (x11)))))))
16Use earlier factsL106–115
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L106
specialize gaussian_add_for_representations (((((((x) * (x10))) + (((x1) * (x11))))) + (((((x2) * (x8))) + (((x3) * (x9))))))) - L107
specialize gaussian_add_for_representations (((((((x) * (x11))) + (((x1) * (x10))))) + (((((x2) * (x9))) + (((x3) * (x8))))))) - L108
apply gaussian_add_for_representations - L109
exact hp - L110
exact hq - L111
exact hPQ - L112
specialize gaussian_multiply_of_representations (a) - L113
specialize gaussian_multiply_of_representations (s) - L114
specialize gaussian_multiply_of_representations (t) - L115
specialize gaussian_multiply_of_representations (x)
17Use earlier factsL116–125
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L116
specialize gaussian_multiply_of_representations (x1) - L117
specialize gaussian_multiply_of_representations (x2) - L118
specialize gaussian_multiply_of_representations (x3) - L119
specialize gaussian_multiply_of_representations (((x4) + (x8))) - L120
specialize gaussian_multiply_of_representations (((x5) + (x9))) - L121
specialize gaussian_multiply_of_representations (((x6) + (x10))) - L122
specialize gaussian_multiply_of_representations (((x7) + (x11))) - L123
apply gaussian_multiply_of_representations - L124
exact hA_witness_witness_witness_witness - L125
exact hs
18Use earlier factsL126–135
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L126
specialize gaussian_representation_integer_transport (t) - L127
specialize gaussian_representation_integer_transport (((((((((x) * (x4))) + (((x1) * (x5))))) + (((((x2) * (x7))) + (((x3) * (x6))))))) + (((((((x) * (x8))) + (((x1) * (x9))))) + (((((x2) * (x11))) + (((x3) * (x10))))))))) - L128
specialize gaussian_representation_integer_transport (((((((((x) * (x5))) + (((x1) * (x4))))) + (((((x2) * (x6))) + (((x3) * (x7))))))) + (((((((x) * (x9))) + (((x1) * (x8))))) + (((((x2) * (x10))) + (((x3) * (x11))))))))) - L129
specialize gaussian_representation_integer_transport (((((((((x) * (x6))) + (((x1) * (x7))))) + (((((x2) * (x4))) + (((x3) * (x5))))))) + (((((((x) * (x10))) + (((x1) * (x11))))) + (((((x2) * (x8))) + (((x3) * (x9))))))))) - L130
specialize gaussian_representation_integer_transport (((((((((x) * (x7))) + (((x1) * (x6))))) + (((((x2) * (x5))) + (((x3) * (x4))))))) + (((((((x) * (x11))) + (((x1) * (x10))))) + (((((x2) * (x9))) + (((x3) * (x8))))))))) - L131
specialize gaussian_representation_integer_transport (((((((x) * (((x4) + (x8))))) + (((x1) * (((x5) + (x9))))))) + (((((x2) * (((x7) + (x11))))) + (((x3) * (((x6) + (x10))))))))) - L132
specialize gaussian_representation_integer_transport (((((((x) * (((x5) + (x9))))) + (((x1) * (((x4) + (x8))))))) + (((((x2) * (((x6) + (x10))))) + (((x3) * (((x7) + (x11))))))))) - L133
specialize gaussian_representation_integer_transport (((((((x) * (((x6) + (x10))))) + (((x1) * (((x7) + (x11))))))) + (((((x2) * (((x4) + (x8))))) + (((x3) * (((x5) + (x9))))))))) - L134
specialize gaussian_representation_integer_transport (((((((x) * (((x7) + (x11))))) + (((x1) * (((x6) + (x10))))))) + (((((x2) * (((x5) + (x9))))) + (((x3) * (((x4) + (x8))))))))) - L135
apply gaussian_representation_integer_transport
19Use earlier factsL136–145
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L136
specialize gaussian_equal_symmetric (((((((x) * (((x4) + (x8))))) + (((x1) * (((x5) + (x9))))))) + (((((x2) * (((x7) + (x11))))) + (((x3) * (((x6) + (x10))))))))) - L137
specialize gaussian_equal_symmetric (((((((x) * (((x5) + (x9))))) + (((x1) * (((x4) + (x8))))))) + (((((x2) * (((x6) + (x10))))) + (((x3) * (((x7) + (x11))))))))) - L138
specialize gaussian_equal_symmetric (((((((x) * (((x6) + (x10))))) + (((x1) * (((x7) + (x11))))))) + (((((x2) * (((x4) + (x8))))) + (((x3) * (((x5) + (x9))))))))) - L139
specialize gaussian_equal_symmetric (((((((x) * (((x7) + (x11))))) + (((x1) * (((x6) + (x10))))))) + (((((x2) * (((x5) + (x9))))) + (((x3) * (((x4) + (x8))))))))) - L140
specialize gaussian_equal_symmetric (((((((((x) * (x4))) + (((x1) * (x5))))) + (((((x2) * (x7))) + (((x3) * (x6))))))) + (((((((x) * (x8))) + (((x1) * (x9))))) + (((((x2) * (x11))) + (((x3) * (x10))))))))) - L141
specialize gaussian_equal_symmetric (((((((((x) * (x5))) + (((x1) * (x4))))) + (((((x2) * (x6))) + (((x3) * (x7))))))) + (((((((x) * (x9))) + (((x1) * (x8))))) + (((((x2) * (x10))) + (((x3) * (x11))))))))) - L142
specialize gaussian_equal_symmetric (((((((((x) * (x6))) + (((x1) * (x7))))) + (((((x2) * (x4))) + (((x3) * (x5))))))) + (((((((x) * (x10))) + (((x1) * (x11))))) + (((((x2) * (x8))) + (((x3) * (x9))))))))) - L143
specialize gaussian_equal_symmetric (((((((((x) * (x7))) + (((x1) * (x6))))) + (((((x2) * (x5))) + (((x3) * (x4))))))) + (((((((x) * (x11))) + (((x1) * (x10))))) + (((((x2) * (x9))) + (((x3) * (x8))))))))) - L144
apply gaussian_equal_symmetric - L145
specialize gaussian_ring_raw_multiply_add_distributive (x)
20Use earlier factsL146–155
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L146
specialize gaussian_ring_raw_multiply_add_distributive (x1) - L147
specialize gaussian_ring_raw_multiply_add_distributive (x2) - L148
specialize gaussian_ring_raw_multiply_add_distributive (x3) - L149
specialize gaussian_ring_raw_multiply_add_distributive (x4) - L150
specialize gaussian_ring_raw_multiply_add_distributive (x5) - L151
specialize gaussian_ring_raw_multiply_add_distributive (x6) - L152
specialize gaussian_ring_raw_multiply_add_distributive (x7) - L153
specialize gaussian_ring_raw_multiply_add_distributive (x8) - L154
specialize gaussian_ring_raw_multiply_add_distributive (x9) - L155
specialize gaussian_ring_raw_multiply_add_distributive (x10)
Original exact command ledger · 158 lines
- 0001
intro a - 0002
intro b - 0003
intro c - 0004
intro s - 0005
intro p - 0006
intro q - 0007
intro t - 0008
intro hBC - 0009
intro hAB - 0010
intro hAC - 0011
intro hPQ - 0012
have hA : exists rp rn ip inn. (exists ge_representation_real_code_chosen_hA ge_representation_imaginary_code_chosen_hA. (((a) = ((ge_representation_real_code_chosen_hA) + (ge_representation_imaginary_code_chosen_hA)) * S ((ge_representation_real_code_chosen_hA) + (ge_representation_imaginary_code_chosen_hA)) + ((ge_representation_imaginary_code_chosen_hA) + (ge_representation_imaginary_code_chosen_hA))) /\ ((exists ge_balance_positive_chosen_hAreal ge_balance_negative_chosen_hAreal. (((((ge_representation_real_code_chosen_hA) = 2 * (ge_balance_positive_chosen_hAreal) /\ (ge_balance_negative_chosen_hAreal) = 0) \/ exists ge_signed_half_chosen_hArealdecode. (((ge_representation_real_code_chosen_hA) = 2 * ge_signed_half_chosen_hArealdecode + 1 /\ (ge_balance_positive_chosen_hAreal) = 0) /\ (ge_balance_negative_chosen_hAreal) = S ge_signed_half_chosen_hArealdecode))) /\ ((rp) + ge_balance_negative_chosen_hAreal = (rn) + ge_balance_positive_chosen_hAreal))) /\ (exists ge_balance_positive_chosen_hAimaginary ge_balance_negative_chosen_hAimaginary. (((((ge_representation_imaginary_code_chosen_hA) = 2 * (ge_balance_positive_chosen_hAimaginary) /\ (ge_balance_negative_chosen_hAimaginary) = 0) \/ exists ge_signed_half_chosen_hAimaginarydecode. (((ge_representation_imaginary_code_chosen_hA) = 2 * ge_signed_half_chosen_hAimaginarydecode + 1 /\ (ge_balance_positive_chosen_hAimaginary) = 0) /\ (ge_balance_negative_chosen_hAimaginary) = S ge_signed_half_chosen_hAimaginarydecode))) /\ ((ip) + ge_balance_negative_chosen_hAimaginary = (inn) + ge_balance_positive_chosen_hAimaginary)))))) - 0013
specialize gaussian_valid_has_representation (a) - 0014
apply gaussian_valid_has_representation - 0015
specialize gaussian_multiply_input_left_valid (a) - 0016
specialize gaussian_multiply_input_left_valid (b) - 0017
specialize gaussian_multiply_input_left_valid (p) - 0018
apply gaussian_multiply_input_left_valid - 0019
exact hAB - 0020
cases hA - 0021
cases hA_witness - 0022
cases hA_witness_witness - 0023
cases hA_witness_witness_witness - 0024
have hB : exists rp rn ip inn. (exists ge_representation_real_code_chosen_hB ge_representation_imaginary_code_chosen_hB. (((b) = ((ge_representation_real_code_chosen_hB) + (ge_representation_imaginary_code_chosen_hB)) * S ((ge_representation_real_code_chosen_hB) + (ge_representation_imaginary_code_chosen_hB)) + ((ge_representation_imaginary_code_chosen_hB) + (ge_representation_imaginary_code_chosen_hB))) /\ ((exists ge_balance_positive_chosen_hBreal ge_balance_negative_chosen_hBreal. (((((ge_representation_real_code_chosen_hB) = 2 * (ge_balance_positive_chosen_hBreal) /\ (ge_balance_negative_chosen_hBreal) = 0) \/ exists ge_signed_half_chosen_hBrealdecode. (((ge_representation_real_code_chosen_hB) = 2 * ge_signed_half_chosen_hBrealdecode + 1 /\ (ge_balance_positive_chosen_hBreal) = 0) /\ (ge_balance_negative_chosen_hBreal) = S ge_signed_half_chosen_hBrealdecode))) /\ ((rp) + ge_balance_negative_chosen_hBreal = (rn) + ge_balance_positive_chosen_hBreal))) /\ (exists ge_balance_positive_chosen_hBimaginary ge_balance_negative_chosen_hBimaginary. (((((ge_representation_imaginary_code_chosen_hB) = 2 * (ge_balance_positive_chosen_hBimaginary) /\ (ge_balance_negative_chosen_hBimaginary) = 0) \/ exists ge_signed_half_chosen_hBimaginarydecode. (((ge_representation_imaginary_code_chosen_hB) = 2 * ge_signed_half_chosen_hBimaginarydecode + 1 /\ (ge_balance_positive_chosen_hBimaginary) = 0) /\ (ge_balance_negative_chosen_hBimaginary) = S ge_signed_half_chosen_hBimaginarydecode))) /\ ((ip) + ge_balance_negative_chosen_hBimaginary = (inn) + ge_balance_positive_chosen_hBimaginary)))))) - 0025
specialize gaussian_valid_has_representation (b) - 0026
apply gaussian_valid_has_representation - 0027
specialize gaussian_multiply_input_right_valid (a) - 0028
specialize gaussian_multiply_input_right_valid (b) - 0029
specialize gaussian_multiply_input_right_valid (p) - 0030
apply gaussian_multiply_input_right_valid - 0031
exact hAB - 0032
cases hB - 0033
cases hB_witness - 0034
cases hB_witness_witness - 0035
cases hB_witness_witness_witness - 0036
have hC : exists rp rn ip inn. (exists ge_representation_real_code_chosen_hC ge_representation_imaginary_code_chosen_hC. (((c) = ((ge_representation_real_code_chosen_hC) + (ge_representation_imaginary_code_chosen_hC)) * S ((ge_representation_real_code_chosen_hC) + (ge_representation_imaginary_code_chosen_hC)) + ((ge_representation_imaginary_code_chosen_hC) + (ge_representation_imaginary_code_chosen_hC))) /\ ((exists ge_balance_positive_chosen_hCreal ge_balance_negative_chosen_hCreal. (((((ge_representation_real_code_chosen_hC) = 2 * (ge_balance_positive_chosen_hCreal) /\ (ge_balance_negative_chosen_hCreal) = 0) \/ exists ge_signed_half_chosen_hCrealdecode. (((ge_representation_real_code_chosen_hC) = 2 * ge_signed_half_chosen_hCrealdecode + 1 /\ (ge_balance_positive_chosen_hCreal) = 0) /\ (ge_balance_negative_chosen_hCreal) = S ge_signed_half_chosen_hCrealdecode))) /\ ((rp) + ge_balance_negative_chosen_hCreal = (rn) + ge_balance_positive_chosen_hCreal))) /\ (exists ge_balance_positive_chosen_hCimaginary ge_balance_negative_chosen_hCimaginary. (((((ge_representation_imaginary_code_chosen_hC) = 2 * (ge_balance_positive_chosen_hCimaginary) /\ (ge_balance_negative_chosen_hCimaginary) = 0) \/ exists ge_signed_half_chosen_hCimaginarydecode. (((ge_representation_imaginary_code_chosen_hC) = 2 * ge_signed_half_chosen_hCimaginarydecode + 1 /\ (ge_balance_positive_chosen_hCimaginary) = 0) /\ (ge_balance_negative_chosen_hCimaginary) = S ge_signed_half_chosen_hCimaginarydecode))) /\ ((ip) + ge_balance_negative_chosen_hCimaginary = (inn) + ge_balance_positive_chosen_hCimaginary)))))) - 0037
specialize gaussian_valid_has_representation (c) - 0038
apply gaussian_valid_has_representation - 0039
specialize gaussian_multiply_input_right_valid (a) - 0040
specialize gaussian_multiply_input_right_valid (c) - 0041
specialize gaussian_multiply_input_right_valid (q) - 0042
apply gaussian_multiply_input_right_valid - 0043
exact hAC - 0044
cases hC - 0045
cases hC_witness - 0046
cases hC_witness_witness - 0047
cases hC_witness_witness_witness - 0048
have hp : exists ge_representation_real_code_distribute_p ge_representation_imaginary_code_distribute_p. (((p) = ((ge_representation_real_code_distribute_p) + (ge_representation_imaginary_code_distribute_p)) * S ((ge_representation_real_code_distribute_p) + (ge_representation_imaginary_code_distribute_p)) + ((ge_representation_imaginary_code_distribute_p) + (ge_representation_imaginary_code_distribute_p))) /\ ((exists ge_balance_positive_distribute_preal ge_balance_negative_distribute_preal. (((((ge_representation_real_code_distribute_p) = 2 * (ge_balance_positive_distribute_preal) /\ (ge_balance_negative_distribute_preal) = 0) \/ exists ge_signed_half_distribute_prealdecode. (((ge_representation_real_code_distribute_p) = 2 * ge_signed_half_distribute_prealdecode + 1 /\ (ge_balance_positive_distribute_preal) = 0) /\ (ge_balance_negative_distribute_preal) = S ge_signed_half_distribute_prealdecode))) /\ ((((((((x) * (x4))) + (((x1) * (x5))))) + (((((x2) * (x7))) + (((x3) * (x6))))))) + ge_balance_negative_distribute_preal = (((((((x) * (x5))) + (((x1) * (x4))))) + (((((x2) * (x6))) + (((x3) * (x7))))))) + ge_balance_positive_distribute_preal))) /\ (exists ge_balance_positive_distribute_pimaginary ge_balance_negative_distribute_pimaginary. (((((ge_representation_imaginary_code_distribute_p) = 2 * (ge_balance_positive_distribute_pimaginary) /\ (ge_balance_negative_distribute_pimaginary) = 0) \/ exists ge_signed_half_distribute_pimaginarydecode. (((ge_representation_imaginary_code_distribute_p) = 2 * ge_signed_half_distribute_pimaginarydecode + 1 /\ (ge_balance_positive_distribute_pimaginary) = 0) /\ (ge_balance_negative_distribute_pimaginary) = S ge_signed_half_distribute_pimaginarydecode))) /\ ((((((((x) * (x6))) + (((x1) * (x7))))) + (((((x2) * (x4))) + (((x3) * (x5))))))) + ge_balance_negative_distribute_pimaginary = (((((((x) * (x7))) + (((x1) * (x6))))) + (((((x2) * (x5))) + (((x3) * (x4))))))) + ge_balance_positive_distribute_pimaginary))))) - 0049
specialize gaussian_multiply_for_representations (a) - 0050
specialize gaussian_multiply_for_representations (b) - 0051
specialize gaussian_multiply_for_representations (p) - 0052
specialize gaussian_multiply_for_representations (x) - 0053
specialize gaussian_multiply_for_representations (x1) - 0054
specialize gaussian_multiply_for_representations (x2) - 0055
specialize gaussian_multiply_for_representations (x3) - 0056
specialize gaussian_multiply_for_representations (x4) - 0057
specialize gaussian_multiply_for_representations (x5) - 0058
specialize gaussian_multiply_for_representations (x6) - 0059
specialize gaussian_multiply_for_representations (x7) - 0060
apply gaussian_multiply_for_representations - 0061
exact hA_witness_witness_witness_witness - 0062
exact hB_witness_witness_witness_witness - 0063
exact hAB - 0064
have hq : exists ge_representation_real_code_distribute_q ge_representation_imaginary_code_distribute_q. (((q) = ((ge_representation_real_code_distribute_q) + (ge_representation_imaginary_code_distribute_q)) * S ((ge_representation_real_code_distribute_q) + (ge_representation_imaginary_code_distribute_q)) + ((ge_representation_imaginary_code_distribute_q) + (ge_representation_imaginary_code_distribute_q))) /\ ((exists ge_balance_positive_distribute_qreal ge_balance_negative_distribute_qreal. (((((ge_representation_real_code_distribute_q) = 2 * (ge_balance_positive_distribute_qreal) /\ (ge_balance_negative_distribute_qreal) = 0) \/ exists ge_signed_half_distribute_qrealdecode. (((ge_representation_real_code_distribute_q) = 2 * ge_signed_half_distribute_qrealdecode + 1 /\ (ge_balance_positive_distribute_qreal) = 0) /\ (ge_balance_negative_distribute_qreal) = S ge_signed_half_distribute_qrealdecode))) /\ ((((((((x) * (x8))) + (((x1) * (x9))))) + (((((x2) * (x11))) + (((x3) * (x10))))))) + ge_balance_negative_distribute_qreal = (((((((x) * (x9))) + (((x1) * (x8))))) + (((((x2) * (x10))) + (((x3) * (x11))))))) + ge_balance_positive_distribute_qreal))) /\ (exists ge_balance_positive_distribute_qimaginary ge_balance_negative_distribute_qimaginary. (((((ge_representation_imaginary_code_distribute_q) = 2 * (ge_balance_positive_distribute_qimaginary) /\ (ge_balance_negative_distribute_qimaginary) = 0) \/ exists ge_signed_half_distribute_qimaginarydecode. (((ge_representation_imaginary_code_distribute_q) = 2 * ge_signed_half_distribute_qimaginarydecode + 1 /\ (ge_balance_positive_distribute_qimaginary) = 0) /\ (ge_balance_negative_distribute_qimaginary) = S ge_signed_half_distribute_qimaginarydecode))) /\ ((((((((x) * (x10))) + (((x1) * (x11))))) + (((((x2) * (x8))) + (((x3) * (x9))))))) + ge_balance_negative_distribute_qimaginary = (((((((x) * (x11))) + (((x1) * (x10))))) + (((((x2) * (x9))) + (((x3) * (x8))))))) + ge_balance_positive_distribute_qimaginary))))) - 0065
specialize gaussian_multiply_for_representations (a) - 0066
specialize gaussian_multiply_for_representations (c) - 0067
specialize gaussian_multiply_for_representations (q) - 0068
specialize gaussian_multiply_for_representations (x) - 0069
specialize gaussian_multiply_for_representations (x1) - 0070
specialize gaussian_multiply_for_representations (x2) - 0071
specialize gaussian_multiply_for_representations (x3) - 0072
specialize gaussian_multiply_for_representations (x8) - 0073
specialize gaussian_multiply_for_representations (x9) - 0074
specialize gaussian_multiply_for_representations (x10) - 0075
specialize gaussian_multiply_for_representations (x11) - 0076
apply gaussian_multiply_for_representations - 0077
exact hA_witness_witness_witness_witness - 0078
exact hC_witness_witness_witness_witness - 0079
exact hAC - 0080
have hs : exists ge_representation_real_code_distribute_s ge_representation_imaginary_code_distribute_s. (((s) = ((ge_representation_real_code_distribute_s) + (ge_representation_imaginary_code_distribute_s)) * S ((ge_representation_real_code_distribute_s) + (ge_representation_imaginary_code_distribute_s)) + ((ge_representation_imaginary_code_distribute_s) + (ge_representation_imaginary_code_distribute_s))) /\ ((exists ge_balance_positive_distribute_sreal ge_balance_negative_distribute_sreal. (((((ge_representation_real_code_distribute_s) = 2 * (ge_balance_positive_distribute_sreal) /\ (ge_balance_negative_distribute_sreal) = 0) \/ exists ge_signed_half_distribute_srealdecode. (((ge_representation_real_code_distribute_s) = 2 * ge_signed_half_distribute_srealdecode + 1 /\ (ge_balance_positive_distribute_sreal) = 0) /\ (ge_balance_negative_distribute_sreal) = S ge_signed_half_distribute_srealdecode))) /\ ((((x4) + (x8))) + ge_balance_negative_distribute_sreal = (((x5) + (x9))) + ge_balance_positive_distribute_sreal))) /\ (exists ge_balance_positive_distribute_simaginary ge_balance_negative_distribute_simaginary. (((((ge_representation_imaginary_code_distribute_s) = 2 * (ge_balance_positive_distribute_simaginary) /\ (ge_balance_negative_distribute_simaginary) = 0) \/ exists ge_signed_half_distribute_simaginarydecode. (((ge_representation_imaginary_code_distribute_s) = 2 * ge_signed_half_distribute_simaginarydecode + 1 /\ (ge_balance_positive_distribute_simaginary) = 0) /\ (ge_balance_negative_distribute_simaginary) = S ge_signed_half_distribute_simaginarydecode))) /\ ((((x6) + (x10))) + ge_balance_negative_distribute_simaginary = (((x7) + (x11))) + ge_balance_positive_distribute_simaginary))))) - 0081
specialize gaussian_add_for_representations (b) - 0082
specialize gaussian_add_for_representations (c) - 0083
specialize gaussian_add_for_representations (s) - 0084
specialize gaussian_add_for_representations (x4) - 0085
specialize gaussian_add_for_representations (x5) - 0086
specialize gaussian_add_for_representations (x6) - 0087
specialize gaussian_add_for_representations (x7) - 0088
specialize gaussian_add_for_representations (x8) - 0089
specialize gaussian_add_for_representations (x9) - 0090
specialize gaussian_add_for_representations (x10) - 0091
specialize gaussian_add_for_representations (x11) - 0092
apply gaussian_add_for_representations - 0093
exact hB_witness_witness_witness_witness - 0094
exact hC_witness_witness_witness_witness - 0095
exact hBC - 0096
have ht : exists ge_representation_real_code_distribute_t ge_representation_imaginary_code_distribute_t. (((t) = ((ge_representation_real_code_distribute_t) + (ge_representation_imaginary_code_distribute_t)) * S ((ge_representation_real_code_distribute_t) + (ge_representation_imaginary_code_distribute_t)) + ((ge_representation_imaginary_code_distribute_t) + (ge_representation_imaginary_code_distribute_t))) /\ ((exists ge_balance_positive_distribute_treal ge_balance_negative_distribute_treal. (((((ge_representation_real_code_distribute_t) = 2 * (ge_balance_positive_distribute_treal) /\ (ge_balance_negative_distribute_treal) = 0) \/ exists ge_signed_half_distribute_trealdecode. (((ge_representation_real_code_distribute_t) = 2 * ge_signed_half_distribute_trealdecode + 1 /\ (ge_balance_positive_distribute_treal) = 0) /\ (ge_balance_negative_distribute_treal) = S ge_signed_half_distribute_trealdecode))) /\ ((((((((((x) * (x4))) + (((x1) * (x5))))) + (((((x2) * (x7))) + (((x3) * (x6))))))) + (((((((x) * (x8))) + (((x1) * (x9))))) + (((((x2) * (x11))) + (((x3) * (x10))))))))) + ge_balance_negative_distribute_treal = (((((((((x) * (x5))) + (((x1) * (x4))))) + (((((x2) * (x6))) + (((x3) * (x7))))))) + (((((((x) * (x9))) + (((x1) * (x8))))) + (((((x2) * (x10))) + (((x3) * (x11))))))))) + ge_balance_positive_distribute_treal))) /\ (exists ge_balance_positive_distribute_timaginary ge_balance_negative_distribute_timaginary. (((((ge_representation_imaginary_code_distribute_t) = 2 * (ge_balance_positive_distribute_timaginary) /\ (ge_balance_negative_distribute_timaginary) = 0) \/ exists ge_signed_half_distribute_timaginarydecode. (((ge_representation_imaginary_code_distribute_t) = 2 * ge_signed_half_distribute_timaginarydecode + 1 /\ (ge_balance_positive_distribute_timaginary) = 0) /\ (ge_balance_negative_distribute_timaginary) = S ge_signed_half_distribute_timaginarydecode))) /\ ((((((((((x) * (x6))) + (((x1) * (x7))))) + (((((x2) * (x4))) + (((x3) * (x5))))))) + (((((((x) * (x10))) + (((x1) * (x11))))) + (((((x2) * (x8))) + (((x3) * (x9))))))))) + ge_balance_negative_distribute_timaginary = (((((((((x) * (x7))) + (((x1) * (x6))))) + (((((x2) * (x5))) + (((x3) * (x4))))))) + (((((((x) * (x11))) + (((x1) * (x10))))) + (((((x2) * (x9))) + (((x3) * (x8))))))))) + ge_balance_positive_distribute_timaginary))))) - 0097
specialize gaussian_add_for_representations (p) - 0098
specialize gaussian_add_for_representations (q) - 0099
specialize gaussian_add_for_representations (t) - 0100
specialize gaussian_add_for_representations (((((((x) * (x4))) + (((x1) * (x5))))) + (((((x2) * (x7))) + (((x3) * (x6))))))) - 0101
specialize gaussian_add_for_representations (((((((x) * (x5))) + (((x1) * (x4))))) + (((((x2) * (x6))) + (((x3) * (x7))))))) - 0102
specialize gaussian_add_for_representations (((((((x) * (x6))) + (((x1) * (x7))))) + (((((x2) * (x4))) + (((x3) * (x5))))))) - 0103
specialize gaussian_add_for_representations (((((((x) * (x7))) + (((x1) * (x6))))) + (((((x2) * (x5))) + (((x3) * (x4))))))) - 0104
specialize gaussian_add_for_representations (((((((x) * (x8))) + (((x1) * (x9))))) + (((((x2) * (x11))) + (((x3) * (x10))))))) - 0105
specialize gaussian_add_for_representations (((((((x) * (x9))) + (((x1) * (x8))))) + (((((x2) * (x10))) + (((x3) * (x11))))))) - 0106
specialize gaussian_add_for_representations (((((((x) * (x10))) + (((x1) * (x11))))) + (((((x2) * (x8))) + (((x3) * (x9))))))) - 0107
specialize gaussian_add_for_representations (((((((x) * (x11))) + (((x1) * (x10))))) + (((((x2) * (x9))) + (((x3) * (x8))))))) - 0108
apply gaussian_add_for_representations - 0109
exact hp - 0110
exact hq - 0111
exact hPQ - 0112
specialize gaussian_multiply_of_representations (a) - 0113
specialize gaussian_multiply_of_representations (s) - 0114
specialize gaussian_multiply_of_representations (t) - 0115
specialize gaussian_multiply_of_representations (x) - 0116
specialize gaussian_multiply_of_representations (x1) - 0117
specialize gaussian_multiply_of_representations (x2) - 0118
specialize gaussian_multiply_of_representations (x3) - 0119
specialize gaussian_multiply_of_representations (((x4) + (x8))) - 0120
specialize gaussian_multiply_of_representations (((x5) + (x9))) - 0121
specialize gaussian_multiply_of_representations (((x6) + (x10))) - 0122
specialize gaussian_multiply_of_representations (((x7) + (x11))) - 0123
apply gaussian_multiply_of_representations - 0124
exact hA_witness_witness_witness_witness - 0125
exact hs - 0126
specialize gaussian_representation_integer_transport (t) - 0127
specialize gaussian_representation_integer_transport (((((((((x) * (x4))) + (((x1) * (x5))))) + (((((x2) * (x7))) + (((x3) * (x6))))))) + (((((((x) * (x8))) + (((x1) * (x9))))) + (((((x2) * (x11))) + (((x3) * (x10))))))))) - 0128
specialize gaussian_representation_integer_transport (((((((((x) * (x5))) + (((x1) * (x4))))) + (((((x2) * (x6))) + (((x3) * (x7))))))) + (((((((x) * (x9))) + (((x1) * (x8))))) + (((((x2) * (x10))) + (((x3) * (x11))))))))) - 0129
specialize gaussian_representation_integer_transport (((((((((x) * (x6))) + (((x1) * (x7))))) + (((((x2) * (x4))) + (((x3) * (x5))))))) + (((((((x) * (x10))) + (((x1) * (x11))))) + (((((x2) * (x8))) + (((x3) * (x9))))))))) - 0130
specialize gaussian_representation_integer_transport (((((((((x) * (x7))) + (((x1) * (x6))))) + (((((x2) * (x5))) + (((x3) * (x4))))))) + (((((((x) * (x11))) + (((x1) * (x10))))) + (((((x2) * (x9))) + (((x3) * (x8))))))))) - 0131
specialize gaussian_representation_integer_transport (((((((x) * (((x4) + (x8))))) + (((x1) * (((x5) + (x9))))))) + (((((x2) * (((x7) + (x11))))) + (((x3) * (((x6) + (x10))))))))) - 0132
specialize gaussian_representation_integer_transport (((((((x) * (((x5) + (x9))))) + (((x1) * (((x4) + (x8))))))) + (((((x2) * (((x6) + (x10))))) + (((x3) * (((x7) + (x11))))))))) - 0133
specialize gaussian_representation_integer_transport (((((((x) * (((x6) + (x10))))) + (((x1) * (((x7) + (x11))))))) + (((((x2) * (((x4) + (x8))))) + (((x3) * (((x5) + (x9))))))))) - 0134
specialize gaussian_representation_integer_transport (((((((x) * (((x7) + (x11))))) + (((x1) * (((x6) + (x10))))))) + (((((x2) * (((x5) + (x9))))) + (((x3) * (((x4) + (x8))))))))) - 0135
apply gaussian_representation_integer_transport - 0136
specialize gaussian_equal_symmetric (((((((x) * (((x4) + (x8))))) + (((x1) * (((x5) + (x9))))))) + (((((x2) * (((x7) + (x11))))) + (((x3) * (((x6) + (x10))))))))) - 0137
specialize gaussian_equal_symmetric (((((((x) * (((x5) + (x9))))) + (((x1) * (((x4) + (x8))))))) + (((((x2) * (((x6) + (x10))))) + (((x3) * (((x7) + (x11))))))))) - 0138
specialize gaussian_equal_symmetric (((((((x) * (((x6) + (x10))))) + (((x1) * (((x7) + (x11))))))) + (((((x2) * (((x4) + (x8))))) + (((x3) * (((x5) + (x9))))))))) - 0139
specialize gaussian_equal_symmetric (((((((x) * (((x7) + (x11))))) + (((x1) * (((x6) + (x10))))))) + (((((x2) * (((x5) + (x9))))) + (((x3) * (((x4) + (x8))))))))) - 0140
specialize gaussian_equal_symmetric (((((((((x) * (x4))) + (((x1) * (x5))))) + (((((x2) * (x7))) + (((x3) * (x6))))))) + (((((((x) * (x8))) + (((x1) * (x9))))) + (((((x2) * (x11))) + (((x3) * (x10))))))))) - 0141
specialize gaussian_equal_symmetric (((((((((x) * (x5))) + (((x1) * (x4))))) + (((((x2) * (x6))) + (((x3) * (x7))))))) + (((((((x) * (x9))) + (((x1) * (x8))))) + (((((x2) * (x10))) + (((x3) * (x11))))))))) - 0142
specialize gaussian_equal_symmetric (((((((((x) * (x6))) + (((x1) * (x7))))) + (((((x2) * (x4))) + (((x3) * (x5))))))) + (((((((x) * (x10))) + (((x1) * (x11))))) + (((((x2) * (x8))) + (((x3) * (x9))))))))) - 0143
specialize gaussian_equal_symmetric (((((((((x) * (x7))) + (((x1) * (x6))))) + (((((x2) * (x5))) + (((x3) * (x4))))))) + (((((((x) * (x11))) + (((x1) * (x10))))) + (((((x2) * (x9))) + (((x3) * (x8))))))))) - 0144
apply gaussian_equal_symmetric - 0145
specialize gaussian_ring_raw_multiply_add_distributive (x) - 0146
specialize gaussian_ring_raw_multiply_add_distributive (x1) - 0147
specialize gaussian_ring_raw_multiply_add_distributive (x2) - 0148
specialize gaussian_ring_raw_multiply_add_distributive (x3) - 0149
specialize gaussian_ring_raw_multiply_add_distributive (x4) - 0150
specialize gaussian_ring_raw_multiply_add_distributive (x5) - 0151
specialize gaussian_ring_raw_multiply_add_distributive (x6) - 0152
specialize gaussian_ring_raw_multiply_add_distributive (x7) - 0153
specialize gaussian_ring_raw_multiply_add_distributive (x8) - 0154
specialize gaussian_ring_raw_multiply_add_distributive (x9) - 0155
specialize gaussian_ring_raw_multiply_add_distributive (x10) - 0156
specialize gaussian_ring_raw_multiply_add_distributive (x11) - 0157
apply gaussian_ring_raw_multiply_add_distributive - 0158
exact ht