Exact expanded PA statement
forall p q h k. p = 2 * h + 1 -> q = 2 * k + 1 -> ((~(p = 1) /\ forall gsp_prime_left_ged_pair_prime_p gsp_prime_right_ged_pair_prime_p. p = gsp_prime_left_ged_pair_prime_p * gsp_prime_right_ged_pair_prime_p -> gsp_prime_left_ged_pair_prime_p = 1 \/ gsp_prime_right_ged_pair_prime_p = 1)) -> ((~(q = 1) /\ forall gsp_prime_left_ged_pair_prime_q gsp_prime_right_ged_pair_prime_q. q = gsp_prime_left_ged_pair_prime_q * gsp_prime_right_ged_pair_prime_q -> gsp_prime_left_ged_pair_prime_q = 1 \/ gsp_prime_right_ged_pair_prime_q = 1)) -> ~(p = q) -> (exists e f Q U. ((((((((exists qr_x_ged_pair_first_classification_qres. exists qr_u_ged_pair_first_classification_qres qr_v_ged_pair_first_classification_qres. qr_x_ged_pair_first_classification_qres * qr_x_ged_pair_first_classification_qres + p * qr_u_ged_pair_first_classification_qres = q + p * qr_v_ged_pair_first_classification_qres) -> (exists gs_even_ged_pair_first_classification_even. e = 2 * gs_even_ged_pair_first_classification_even)) /\ ((exists gs_even_ged_pair_first_classification_even. e = 2 * gs_even_ged_pair_first_classification_even) -> (exists qr_x_ged_pair_first_classification_qres. exists qr_u_ged_pair_first_classification_qres qr_v_ged_pair_first_classification_qres. qr_x_ged_pair_first_classification_qres * qr_x_ged_pair_first_classification_qres + p * qr_u_ged_pair_first_classification_qres = q + p * qr_v_ged_pair_first_classification_qres)))) /\ (((~(exists qr_x_ged_pair_first_classification_qres. exists qr_u_ged_pair_first_classification_qres qr_v_ged_pair_first_classification_qres. qr_x_ged_pair_first_classification_qres * qr_x_ged_pair_first_classification_qres + p * qr_u_ged_pair_first_classification_qres = q + p * qr_v_ged_pair_first_classification_qres) -> (exists gs_odd_ged_pair_first_classification_odd. e = 2 * gs_odd_ged_pair_first_classification_odd + 1)) /\ ((exists gs_odd_ged_pair_first_classification_odd. e = 2 * gs_odd_ged_pair_first_classification_odd + 1) -> ~(exists qr_x_ged_pair_first_classification_qres. exists qr_u_ged_pair_first_classification_qres qr_v_ged_pair_first_classification_qres. qr_x_ged_pair_first_classification_qres * qr_x_ged_pair_first_classification_qres + p * qr_u_ged_pair_first_classification_qres = q + p * qr_v_ged_pair_first_classification_qres)))))) /\ ((((((exists qr_x_ged_pair_second_classification_qres. exists qr_u_ged_pair_second_classification_qres qr_v_ged_pair_second_classification_qres. qr_x_ged_pair_second_classification_qres * qr_x_ged_pair_second_classification_qres + q * qr_u_ged_pair_second_classification_qres = p + q * qr_v_ged_pair_second_classification_qres) -> (exists gs_even_ged_pair_second_classification_even. f = 2 * gs_even_ged_pair_second_classification_even)) /\ ((exists gs_even_ged_pair_second_classification_even. f = 2 * gs_even_ged_pair_second_classification_even) -> (exists qr_x_ged_pair_second_classification_qres. exists qr_u_ged_pair_second_classification_qres qr_v_ged_pair_second_classification_qres. qr_x_ged_pair_second_classification_qres * qr_x_ged_pair_second_classification_qres + q * qr_u_ged_pair_second_classification_qres = p + q * qr_v_ged_pair_second_classification_qres)))) /\ (((~(exists qr_x_ged_pair_second_classification_qres. exists qr_u_ged_pair_second_classification_qres qr_v_ged_pair_second_classification_qres. qr_x_ged_pair_second_classification_qres * qr_x_ged_pair_second_classification_qres + q * qr_u_ged_pair_second_classification_qres = p + q * qr_v_ged_pair_second_classification_qres) -> (exists gs_odd_ged_pair_second_classification_odd. f = 2 * gs_odd_ged_pair_second_classification_odd + 1)) /\ ((exists gs_odd_ged_pair_second_classification_odd. f = 2 * gs_odd_ged_pair_second_classification_odd + 1) -> ~(exists qr_x_ged_pair_second_classification_qres. exists qr_u_ged_pair_second_classification_qres qr_v_ged_pair_second_classification_qres. qr_x_ged_pair_second_classification_qres * qr_x_ged_pair_second_classification_qres + q * qr_u_ged_pair_second_classification_qres = p + q * qr_v_ged_pair_second_classification_qres))))))) /\ (((exists fspm_u_ged_pair_first_mod fspm_v_ged_pair_first_mod. (e) + 2 * fspm_u_ged_pair_first_mod = (Q) + 2 * fspm_v_ged_pair_first_mod) /\ (exists fspm_u_ged_pair_second_mod fspm_v_ged_pair_second_mod. (f) + 2 * fspm_u_ged_pair_second_mod = (U) + 2 * fspm_v_ged_pair_second_mod)) /\ Q + U = h * k)))Build the common Gauss–Eisenstein data package
Curated informal proof
For two distinct odd primes, construct both oriented Gauss half-system counts at once. The preceding finite-fold, bounded-remainder, permutation, and Euler/Gauss lemmas show that each count classifies the corresponding cross-residue proposition.
Eisenstein's lattice count supplies the shared parity relation: after transporting both counts modulo two, their sum is the product of the two half-prime parameters. The theorem retains all witnesses, so the two final reciprocity cases can reuse one provenance-preserving data package.
Referenced ingredients
Proof neighborhood
Direct dependencies
PA006X distinct_primes_mutually_nondivisible PA00D7 odd_prime_gauss_eisenstein_orientation_data_exists PA00DM distinct_odd_prime_half_rectangle_total_exists PA00FF distinct_odd_prime_eisenstein_quotient_sum_identityDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Alpha-v16 checked-use theorem is independently kernel-checked when replayed; it is not a Stable theorem.
- 0001
intro p - 0002
intro q - 0003
intro h - 0004
intro k - 0005
intro hpodd - 0006
intro hqodd - 0007
intro hp - 0008
intro hq - 0009
intro hpq - 0010
have hmutual : ((~(exists gsp_divisor_factor_ged_pair_p_not_q. q = p * gsp_divisor_factor_ged_pair_p_not_q)) /\ (~(exists gsp_divisor_factor_ged_pair_q_not_p. p = q * gsp_divisor_factor_ged_pair_q_not_p))) - 0011
specialize distinct_primes_mutually_nondivisible p - 0012
specialize distinct_primes_mutually_nondivisible q - 0013
apply distinct_primes_mutually_nondivisible - 0014
exact hp - 0015
exact hq - 0016
exact hpq - 0017
cases hmutual - 0018
have hq_odd : exists gs_odd_ged_pair_q_odd. q = 2 * gs_odd_ged_pair_q_odd + 1 - 0019
exists k - 0020
exact hqodd - 0021
have hp_odd : exists gs_odd_ged_pair_p_odd. p = 2 * gs_odd_ged_pair_p_odd + 1 - 0022
exists h - 0023
exact hpodd - 0024
have hfirst : exists tb tc qb qc rb rc e Q. ((forall esd_index_ged_pair_first_scaled esd_value_ged_pair_first_scaled. (exists esd_gap_ged_pair_first_scaled. esd_gap_ged_pair_first_scaled + S esd_index_ged_pair_first_scaled = h) -> (((exists ff_h_esd_ged_pair_first_scaled_decoded. ff_h_esd_ged_pair_first_scaled_decoded + S (esd_value_ged_pair_first_scaled) = S ((S (esd_index_ged_pair_first_scaled)) * tc)) /\ exists ff_q_esd_ged_pair_first_scaled_decoded. tb = ff_q_esd_ged_pair_first_scaled_decoded * S ((S (esd_index_ged_pair_first_scaled)) * tc) + (esd_value_ged_pair_first_scaled))) -> esd_value_ged_pair_first_scaled = q * (1 + esd_index_ged_pair_first_scaled)) /\ ((forall fdp_index_ged_pair_first_division. (exists gsp_lt_gap_ged_pair_first_division_index_bound. gsp_lt_gap_ged_pair_first_division_index_bound + S fdp_index_ged_pair_first_division = h) -> exists fdp_value_ged_pair_first_division fdp_quotient_ged_pair_first_division fdp_remainder_ged_pair_first_division. (((exists ff_h_fdp_ged_pair_first_division_source. ff_h_fdp_ged_pair_first_division_source + S (fdp_value_ged_pair_first_division) = S ((S (fdp_index_ged_pair_first_division)) * tc)) /\ exists ff_q_fdp_ged_pair_first_division_source. tb = ff_q_fdp_ged_pair_first_division_source * S ((S (fdp_index_ged_pair_first_division)) * tc) + (fdp_value_ged_pair_first_division))) /\ ((((exists ff_h_fdp_ged_pair_first_division_quotient_entry. ff_h_fdp_ged_pair_first_division_quotient_entry + S (fdp_quotient_ged_pair_first_division) = S ((S (fdp_index_ged_pair_first_division)) * qc)) /\ exists ff_q_fdp_ged_pair_first_division_quotient_entry. qb = ff_q_fdp_ged_pair_first_division_quotient_entry * S ((S (fdp_index_ged_pair_first_division)) * qc) + (fdp_quotient_ged_pair_first_division))) /\ ((((exists ff_h_fdp_ged_pair_first_division_remainder_entry. ff_h_fdp_ged_pair_first_division_remainder_entry + S (fdp_remainder_ged_pair_first_division) = S ((S (fdp_index_ged_pair_first_division)) * rc)) /\ exists ff_q_fdp_ged_pair_first_division_remainder_entry. rb = ff_q_fdp_ged_pair_first_division_remainder_entry * S ((S (fdp_index_ged_pair_first_division)) * rc) + (fdp_remainder_ged_pair_first_division))) /\ (fdp_value_ged_pair_first_division = p * fdp_quotient_ged_pair_first_division + fdp_remainder_ged_pair_first_division /\ (exists gsp_lt_gap_ged_pair_first_division_remainder_bound. gsp_lt_gap_ged_pair_first_division_remainder_bound + S fdp_remainder_ged_pair_first_division = p))))) /\ ((exists ff_u_ged_pair_first_sum ff_v_ged_pair_first_sum. ((((exists ff_h_ged_pair_first_sum_start. ff_h_ged_pair_first_sum_start + S (0) = S ((S (0)) * ff_v_ged_pair_first_sum)) /\ exists ff_q_ged_pair_first_sum_start. ff_u_ged_pair_first_sum = ff_q_ged_pair_first_sum_start * S ((S (0)) * ff_v_ged_pair_first_sum) + (0))) /\ ((((exists ff_h_ged_pair_first_sum_terminal. ff_h_ged_pair_first_sum_terminal + S (Q) = S ((S (h)) * ff_v_ged_pair_first_sum)) /\ exists ff_q_ged_pair_first_sum_terminal. ff_u_ged_pair_first_sum = ff_q_ged_pair_first_sum_terminal * S ((S (h)) * ff_v_ged_pair_first_sum) + (Q))) /\ forall ff_i_ged_pair_first_sum. (exists ff_lt_ged_pair_first_sum_bound. ff_lt_ged_pair_first_sum_bound + S ff_i_ged_pair_first_sum = h) -> exists ff_a_ged_pair_first_sum ff_r_ged_pair_first_sum ff_s_ged_pair_first_sum. ((((exists ff_h_ged_pair_first_sum_summand. ff_h_ged_pair_first_sum_summand + S (ff_a_ged_pair_first_sum) = S ((S (ff_i_ged_pair_first_sum)) * qc)) /\ exists ff_q_ged_pair_first_sum_summand. qb = ff_q_ged_pair_first_sum_summand * S ((S (ff_i_ged_pair_first_sum)) * qc) + (ff_a_ged_pair_first_sum))) /\ ((((exists ff_h_ged_pair_first_sum_partial. ff_h_ged_pair_first_sum_partial + S (ff_r_ged_pair_first_sum) = S ((S (ff_i_ged_pair_first_sum)) * ff_v_ged_pair_first_sum)) /\ exists ff_q_ged_pair_first_sum_partial. ff_u_ged_pair_first_sum = ff_q_ged_pair_first_sum_partial * S ((S (ff_i_ged_pair_first_sum)) * ff_v_ged_pair_first_sum) + (ff_r_ged_pair_first_sum))) /\ ((((exists ff_h_ged_pair_first_sum_successor. ff_h_ged_pair_first_sum_successor + S (ff_s_ged_pair_first_sum) = S ((S (S ff_i_ged_pair_first_sum)) * ff_v_ged_pair_first_sum)) /\ exists ff_q_ged_pair_first_sum_successor. ff_u_ged_pair_first_sum = ff_q_ged_pair_first_sum_successor * S ((S (S ff_i_ged_pair_first_sum)) * ff_v_ged_pair_first_sum) + (ff_s_ged_pair_first_sum))) /\ ff_s_ged_pair_first_sum = ff_r_ged_pair_first_sum + ff_a_ged_pair_first_sum)))))) /\ (((((((exists qr_x_ged_pair_first_hidden_classification_qres. exists qr_u_ged_pair_first_hidden_classification_qres qr_v_ged_pair_first_hidden_classification_qres. qr_x_ged_pair_first_hidden_classification_qres * qr_x_ged_pair_first_hidden_classification_qres + p * qr_u_ged_pair_first_hidden_classification_qres = q + p * qr_v_ged_pair_first_hidden_classification_qres) -> (exists gs_even_ged_pair_first_hidden_classification_even. e = 2 * gs_even_ged_pair_first_hidden_classification_even)) /\ ((exists gs_even_ged_pair_first_hidden_classification_even. e = 2 * gs_even_ged_pair_first_hidden_classification_even) -> (exists qr_x_ged_pair_first_hidden_classification_qres. exists qr_u_ged_pair_first_hidden_classification_qres qr_v_ged_pair_first_hidden_classification_qres. qr_x_ged_pair_first_hidden_classification_qres * qr_x_ged_pair_first_hidden_classification_qres + p * qr_u_ged_pair_first_hidden_classification_qres = q + p * qr_v_ged_pair_first_hidden_classification_qres)))) /\ (((~(exists qr_x_ged_pair_first_hidden_classification_qres. exists qr_u_ged_pair_first_hidden_classification_qres qr_v_ged_pair_first_hidden_classification_qres. qr_x_ged_pair_first_hidden_classification_qres * qr_x_ged_pair_first_hidden_classification_qres + p * qr_u_ged_pair_first_hidden_classification_qres = q + p * qr_v_ged_pair_first_hidden_classification_qres) -> (exists gs_odd_ged_pair_first_hidden_classification_odd. e = 2 * gs_odd_ged_pair_first_hidden_classification_odd + 1)) /\ ((exists gs_odd_ged_pair_first_hidden_classification_odd. e = 2 * gs_odd_ged_pair_first_hidden_classification_odd + 1) -> ~(exists qr_x_ged_pair_first_hidden_classification_qres. exists qr_u_ged_pair_first_hidden_classification_qres qr_v_ged_pair_first_hidden_classification_qres. qr_x_ged_pair_first_hidden_classification_qres * qr_x_ged_pair_first_hidden_classification_qres + p * qr_u_ged_pair_first_hidden_classification_qres = q + p * qr_v_ged_pair_first_hidden_classification_qres)))))) /\ (exists fspm_u_ged_pair_first_hidden_mod fspm_v_ged_pair_first_hidden_mod. (e) + 2 * fspm_u_ged_pair_first_hidden_mod = (Q) + 2 * fspm_v_ged_pair_first_hidden_mod))))) - 0025
specialize odd_prime_gauss_eisenstein_orientation_data_exists p - 0026
specialize odd_prime_gauss_eisenstein_orientation_data_exists h - 0027
specialize odd_prime_gauss_eisenstein_orientation_data_exists q - 0028
apply odd_prime_gauss_eisenstein_orientation_data_exists - 0029
exact hpodd - 0030
exact hq_odd - 0031
exact hp - 0032
exact hmutual_left - 0033
cases hfirst - 0034
cases hfirst_witness - 0035
cases hfirst_witness_witness - 0036
cases hfirst_witness_witness_witness - 0037
cases hfirst_witness_witness_witness_witness - 0038
cases hfirst_witness_witness_witness_witness_witness - 0039
cases hfirst_witness_witness_witness_witness_witness_witness - 0040
cases hfirst_witness_witness_witness_witness_witness_witness_witness - 0041
cases hfirst_witness_witness_witness_witness_witness_witness_witness_witness - 0042
cases hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right - 0043
cases hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_right - 0044
cases hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_right_right - 0045
have hsecond : exists tb tc qb qc rb rc e Q. ((forall esd_index_ged_pair_second_scaled esd_value_ged_pair_second_scaled. (exists esd_gap_ged_pair_second_scaled. esd_gap_ged_pair_second_scaled + S esd_index_ged_pair_second_scaled = k) -> (((exists ff_h_esd_ged_pair_second_scaled_decoded. ff_h_esd_ged_pair_second_scaled_decoded + S (esd_value_ged_pair_second_scaled) = S ((S (esd_index_ged_pair_second_scaled)) * tc)) /\ exists ff_q_esd_ged_pair_second_scaled_decoded. tb = ff_q_esd_ged_pair_second_scaled_decoded * S ((S (esd_index_ged_pair_second_scaled)) * tc) + (esd_value_ged_pair_second_scaled))) -> esd_value_ged_pair_second_scaled = p * (1 + esd_index_ged_pair_second_scaled)) /\ ((forall fdp_index_ged_pair_second_division. (exists gsp_lt_gap_ged_pair_second_division_index_bound. gsp_lt_gap_ged_pair_second_division_index_bound + S fdp_index_ged_pair_second_division = k) -> exists fdp_value_ged_pair_second_division fdp_quotient_ged_pair_second_division fdp_remainder_ged_pair_second_division. (((exists ff_h_fdp_ged_pair_second_division_source. ff_h_fdp_ged_pair_second_division_source + S (fdp_value_ged_pair_second_division) = S ((S (fdp_index_ged_pair_second_division)) * tc)) /\ exists ff_q_fdp_ged_pair_second_division_source. tb = ff_q_fdp_ged_pair_second_division_source * S ((S (fdp_index_ged_pair_second_division)) * tc) + (fdp_value_ged_pair_second_division))) /\ ((((exists ff_h_fdp_ged_pair_second_division_quotient_entry. ff_h_fdp_ged_pair_second_division_quotient_entry + S (fdp_quotient_ged_pair_second_division) = S ((S (fdp_index_ged_pair_second_division)) * qc)) /\ exists ff_q_fdp_ged_pair_second_division_quotient_entry. qb = ff_q_fdp_ged_pair_second_division_quotient_entry * S ((S (fdp_index_ged_pair_second_division)) * qc) + (fdp_quotient_ged_pair_second_division))) /\ ((((exists ff_h_fdp_ged_pair_second_division_remainder_entry. ff_h_fdp_ged_pair_second_division_remainder_entry + S (fdp_remainder_ged_pair_second_division) = S ((S (fdp_index_ged_pair_second_division)) * rc)) /\ exists ff_q_fdp_ged_pair_second_division_remainder_entry. rb = ff_q_fdp_ged_pair_second_division_remainder_entry * S ((S (fdp_index_ged_pair_second_division)) * rc) + (fdp_remainder_ged_pair_second_division))) /\ (fdp_value_ged_pair_second_division = q * fdp_quotient_ged_pair_second_division + fdp_remainder_ged_pair_second_division /\ (exists gsp_lt_gap_ged_pair_second_division_remainder_bound. gsp_lt_gap_ged_pair_second_division_remainder_bound + S fdp_remainder_ged_pair_second_division = q))))) /\ ((exists ff_u_ged_pair_second_sum ff_v_ged_pair_second_sum. ((((exists ff_h_ged_pair_second_sum_start. ff_h_ged_pair_second_sum_start + S (0) = S ((S (0)) * ff_v_ged_pair_second_sum)) /\ exists ff_q_ged_pair_second_sum_start. ff_u_ged_pair_second_sum = ff_q_ged_pair_second_sum_start * S ((S (0)) * ff_v_ged_pair_second_sum) + (0))) /\ ((((exists ff_h_ged_pair_second_sum_terminal. ff_h_ged_pair_second_sum_terminal + S (Q) = S ((S (k)) * ff_v_ged_pair_second_sum)) /\ exists ff_q_ged_pair_second_sum_terminal. ff_u_ged_pair_second_sum = ff_q_ged_pair_second_sum_terminal * S ((S (k)) * ff_v_ged_pair_second_sum) + (Q))) /\ forall ff_i_ged_pair_second_sum. (exists ff_lt_ged_pair_second_sum_bound. ff_lt_ged_pair_second_sum_bound + S ff_i_ged_pair_second_sum = k) -> exists ff_a_ged_pair_second_sum ff_r_ged_pair_second_sum ff_s_ged_pair_second_sum. ((((exists ff_h_ged_pair_second_sum_summand. ff_h_ged_pair_second_sum_summand + S (ff_a_ged_pair_second_sum) = S ((S (ff_i_ged_pair_second_sum)) * qc)) /\ exists ff_q_ged_pair_second_sum_summand. qb = ff_q_ged_pair_second_sum_summand * S ((S (ff_i_ged_pair_second_sum)) * qc) + (ff_a_ged_pair_second_sum))) /\ ((((exists ff_h_ged_pair_second_sum_partial. ff_h_ged_pair_second_sum_partial + S (ff_r_ged_pair_second_sum) = S ((S (ff_i_ged_pair_second_sum)) * ff_v_ged_pair_second_sum)) /\ exists ff_q_ged_pair_second_sum_partial. ff_u_ged_pair_second_sum = ff_q_ged_pair_second_sum_partial * S ((S (ff_i_ged_pair_second_sum)) * ff_v_ged_pair_second_sum) + (ff_r_ged_pair_second_sum))) /\ ((((exists ff_h_ged_pair_second_sum_successor. ff_h_ged_pair_second_sum_successor + S (ff_s_ged_pair_second_sum) = S ((S (S ff_i_ged_pair_second_sum)) * ff_v_ged_pair_second_sum)) /\ exists ff_q_ged_pair_second_sum_successor. ff_u_ged_pair_second_sum = ff_q_ged_pair_second_sum_successor * S ((S (S ff_i_ged_pair_second_sum)) * ff_v_ged_pair_second_sum) + (ff_s_ged_pair_second_sum))) /\ ff_s_ged_pair_second_sum = ff_r_ged_pair_second_sum + ff_a_ged_pair_second_sum)))))) /\ (((((((exists qr_x_ged_pair_second_hidden_classification_qres. exists qr_u_ged_pair_second_hidden_classification_qres qr_v_ged_pair_second_hidden_classification_qres. qr_x_ged_pair_second_hidden_classification_qres * qr_x_ged_pair_second_hidden_classification_qres + q * qr_u_ged_pair_second_hidden_classification_qres = p + q * qr_v_ged_pair_second_hidden_classification_qres) -> (exists gs_even_ged_pair_second_hidden_classification_even. e = 2 * gs_even_ged_pair_second_hidden_classification_even)) /\ ((exists gs_even_ged_pair_second_hidden_classification_even. e = 2 * gs_even_ged_pair_second_hidden_classification_even) -> (exists qr_x_ged_pair_second_hidden_classification_qres. exists qr_u_ged_pair_second_hidden_classification_qres qr_v_ged_pair_second_hidden_classification_qres. qr_x_ged_pair_second_hidden_classification_qres * qr_x_ged_pair_second_hidden_classification_qres + q * qr_u_ged_pair_second_hidden_classification_qres = p + q * qr_v_ged_pair_second_hidden_classification_qres)))) /\ (((~(exists qr_x_ged_pair_second_hidden_classification_qres. exists qr_u_ged_pair_second_hidden_classification_qres qr_v_ged_pair_second_hidden_classification_qres. qr_x_ged_pair_second_hidden_classification_qres * qr_x_ged_pair_second_hidden_classification_qres + q * qr_u_ged_pair_second_hidden_classification_qres = p + q * qr_v_ged_pair_second_hidden_classification_qres) -> (exists gs_odd_ged_pair_second_hidden_classification_odd. e = 2 * gs_odd_ged_pair_second_hidden_classification_odd + 1)) /\ ((exists gs_odd_ged_pair_second_hidden_classification_odd. e = 2 * gs_odd_ged_pair_second_hidden_classification_odd + 1) -> ~(exists qr_x_ged_pair_second_hidden_classification_qres. exists qr_u_ged_pair_second_hidden_classification_qres qr_v_ged_pair_second_hidden_classification_qres. qr_x_ged_pair_second_hidden_classification_qres * qr_x_ged_pair_second_hidden_classification_qres + q * qr_u_ged_pair_second_hidden_classification_qres = p + q * qr_v_ged_pair_second_hidden_classification_qres)))))) /\ (exists fspm_u_ged_pair_second_hidden_mod fspm_v_ged_pair_second_hidden_mod. (e) + 2 * fspm_u_ged_pair_second_hidden_mod = (Q) + 2 * fspm_v_ged_pair_second_hidden_mod))))) - 0046
specialize odd_prime_gauss_eisenstein_orientation_data_exists q - 0047
specialize odd_prime_gauss_eisenstein_orientation_data_exists k - 0048
specialize odd_prime_gauss_eisenstein_orientation_data_exists p - 0049
apply odd_prime_gauss_eisenstein_orientation_data_exists - 0050
exact hqodd - 0051
exact hp_odd - 0052
exact hq - 0053
exact hmutual_right - 0054
cases hsecond - 0055
cases hsecond_witness - 0056
cases hsecond_witness_witness - 0057
cases hsecond_witness_witness_witness - 0058
cases hsecond_witness_witness_witness_witness - 0059
cases hsecond_witness_witness_witness_witness_witness - 0060
cases hsecond_witness_witness_witness_witness_witness_witness - 0061
cases hsecond_witness_witness_witness_witness_witness_witness_witness - 0062
cases hsecond_witness_witness_witness_witness_witness_witness_witness_witness - 0063
cases hsecond_witness_witness_witness_witness_witness_witness_witness_witness_right - 0064
cases hsecond_witness_witness_witness_witness_witness_witness_witness_witness_right_right - 0065
cases hsecond_witness_witness_witness_witness_witness_witness_witness_witness_right_right_right - 0066
have hqp : ~(q = p) - 0067
intro hqp_eq - 0068
apply hpq - 0069
symm - 0070
exact hqp_eq - 0071
have hfirst_rectangle : exists cb cc total. ((forall erc_row_ged_pair_first_rectangle. (exists erc_lt_gap_ged_pair_first_rectangle_bound. erc_lt_gap_ged_pair_first_rectangle_bound + S (erc_row_ged_pair_first_rectangle) = h) -> exists erc_count_ged_pair_first_rectangle. ((((exists ff_h_erc_ged_pair_first_rectangle_decoded. ff_h_erc_ged_pair_first_rectangle_decoded + S (erc_count_ged_pair_first_rectangle) = S ((S (erc_row_ged_pair_first_rectangle)) * cc)) /\ exists ff_q_erc_ged_pair_first_rectangle_decoded. cb = ff_q_erc_ged_pair_first_rectangle_decoded * S ((S (erc_row_ged_pair_first_rectangle)) * cc) + (erc_count_ged_pair_first_rectangle))) /\ (exists erc_row_code_ged_pair_first_rectangle_witness erc_row_scale_ged_pair_first_rectangle_witness. ((forall eri_column_erc_ged_pair_first_rectangle_witness_row. (exists eri_gap_erc_ged_pair_first_rectangle_witness_row_bound. eri_gap_erc_ged_pair_first_rectangle_witness_row_bound + S (eri_column_erc_ged_pair_first_rectangle_witness_row) = k) -> exists eri_bit_erc_ged_pair_first_rectangle_witness_row. ((((exists ff_h_eri_erc_ged_pair_first_rectangle_witness_row_decoded. ff_h_eri_erc_ged_pair_first_rectangle_witness_row_decoded + S (eri_bit_erc_ged_pair_first_rectangle_witness_row) = S ((S (eri_column_erc_ged_pair_first_rectangle_witness_row)) * erc_row_scale_ged_pair_first_rectangle_witness)) /\ exists ff_q_eri_erc_ged_pair_first_rectangle_witness_row_decoded. erc_row_code_ged_pair_first_rectangle_witness = ff_q_eri_erc_ged_pair_first_rectangle_witness_row_decoded * S ((S (eri_column_erc_ged_pair_first_rectangle_witness_row)) * erc_row_scale_ged_pair_first_rectangle_witness) + (eri_bit_erc_ged_pair_first_rectangle_witness_row))) /\ (((eri_bit_erc_ged_pair_first_rectangle_witness_row = 0 /\ ((exists eri_gap_erc_ged_pair_first_rectangle_witness_row_choice_left. eri_gap_erc_ged_pair_first_rectangle_witness_row_choice_left + S (q * S erc_row_ged_pair_first_rectangle) = p * S eri_column_erc_ged_pair_first_rectangle_witness_row) /\ ~(exists eri_gap_erc_ged_pair_first_rectangle_witness_row_choice_right. eri_gap_erc_ged_pair_first_rectangle_witness_row_choice_right + S (p * S eri_column_erc_ged_pair_first_rectangle_witness_row) = q * S erc_row_ged_pair_first_rectangle))) \/ (eri_bit_erc_ged_pair_first_rectangle_witness_row = 1 /\ ((exists eri_gap_erc_ged_pair_first_rectangle_witness_row_choice_right. eri_gap_erc_ged_pair_first_rectangle_witness_row_choice_right + S (p * S eri_column_erc_ged_pair_first_rectangle_witness_row) = q * S erc_row_ged_pair_first_rectangle) /\ ~(exists eri_gap_erc_ged_pair_first_rectangle_witness_row_choice_left. eri_gap_erc_ged_pair_first_rectangle_witness_row_choice_left + S (q * S erc_row_ged_pair_first_rectangle) = p * S eri_column_erc_ged_pair_first_rectangle_witness_row))))))) /\ (((exists ff_u_erc_ged_pair_first_rectangle_witness_count_sum ff_v_erc_ged_pair_first_rectangle_witness_count_sum. ((((exists ff_h_erc_ged_pair_first_rectangle_witness_count_sum_start. ff_h_erc_ged_pair_first_rectangle_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_ged_pair_first_rectangle_witness_count_sum)) /\ exists ff_q_erc_ged_pair_first_rectangle_witness_count_sum_start. ff_u_erc_ged_pair_first_rectangle_witness_count_sum = ff_q_erc_ged_pair_first_rectangle_witness_count_sum_start * S ((S (0)) * ff_v_erc_ged_pair_first_rectangle_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_ged_pair_first_rectangle_witness_count_sum_terminal. ff_h_erc_ged_pair_first_rectangle_witness_count_sum_terminal + S (erc_count_ged_pair_first_rectangle) = S ((S (k)) * ff_v_erc_ged_pair_first_rectangle_witness_count_sum)) /\ exists ff_q_erc_ged_pair_first_rectangle_witness_count_sum_terminal. ff_u_erc_ged_pair_first_rectangle_witness_count_sum = ff_q_erc_ged_pair_first_rectangle_witness_count_sum_terminal * S ((S (k)) * ff_v_erc_ged_pair_first_rectangle_witness_count_sum) + (erc_count_ged_pair_first_rectangle))) /\ forall ff_i_erc_ged_pair_first_rectangle_witness_count_sum. (exists ff_lt_erc_ged_pair_first_rectangle_witness_count_sum_bound. ff_lt_erc_ged_pair_first_rectangle_witness_count_sum_bound + S ff_i_erc_ged_pair_first_rectangle_witness_count_sum = k) -> exists ff_a_erc_ged_pair_first_rectangle_witness_count_sum ff_r_erc_ged_pair_first_rectangle_witness_count_sum ff_s_erc_ged_pair_first_rectangle_witness_count_sum. ((((exists ff_h_erc_ged_pair_first_rectangle_witness_count_sum_summand. ff_h_erc_ged_pair_first_rectangle_witness_count_sum_summand + S (ff_a_erc_ged_pair_first_rectangle_witness_count_sum) = S ((S (ff_i_erc_ged_pair_first_rectangle_witness_count_sum)) * erc_row_scale_ged_pair_first_rectangle_witness)) /\ exists ff_q_erc_ged_pair_first_rectangle_witness_count_sum_summand. erc_row_code_ged_pair_first_rectangle_witness = ff_q_erc_ged_pair_first_rectangle_witness_count_sum_summand * S ((S (ff_i_erc_ged_pair_first_rectangle_witness_count_sum)) * erc_row_scale_ged_pair_first_rectangle_witness) + (ff_a_erc_ged_pair_first_rectangle_witness_count_sum))) /\ ((((exists ff_h_erc_ged_pair_first_rectangle_witness_count_sum_partial. ff_h_erc_ged_pair_first_rectangle_witness_count_sum_partial + S (ff_r_erc_ged_pair_first_rectangle_witness_count_sum) = S ((S (ff_i_erc_ged_pair_first_rectangle_witness_count_sum)) * ff_v_erc_ged_pair_first_rectangle_witness_count_sum)) /\ exists ff_q_erc_ged_pair_first_rectangle_witness_count_sum_partial. ff_u_erc_ged_pair_first_rectangle_witness_count_sum = ff_q_erc_ged_pair_first_rectangle_witness_count_sum_partial * S ((S (ff_i_erc_ged_pair_first_rectangle_witness_count_sum)) * ff_v_erc_ged_pair_first_rectangle_witness_count_sum) + (ff_r_erc_ged_pair_first_rectangle_witness_count_sum))) /\ ((((exists ff_h_erc_ged_pair_first_rectangle_witness_count_sum_successor. ff_h_erc_ged_pair_first_rectangle_witness_count_sum_successor + S (ff_s_erc_ged_pair_first_rectangle_witness_count_sum) = S ((S (S ff_i_erc_ged_pair_first_rectangle_witness_count_sum)) * ff_v_erc_ged_pair_first_rectangle_witness_count_sum)) /\ exists ff_q_erc_ged_pair_first_rectangle_witness_count_sum_successor. ff_u_erc_ged_pair_first_rectangle_witness_count_sum = ff_q_erc_ged_pair_first_rectangle_witness_count_sum_successor * S ((S (S ff_i_erc_ged_pair_first_rectangle_witness_count_sum)) * ff_v_erc_ged_pair_first_rectangle_witness_count_sum) + (ff_s_erc_ged_pair_first_rectangle_witness_count_sum))) /\ ff_s_erc_ged_pair_first_rectangle_witness_count_sum = ff_r_erc_ged_pair_first_rectangle_witness_count_sum + ff_a_erc_ged_pair_first_rectangle_witness_count_sum)))))) /\ (forall ff_i_erc_ged_pair_first_rectangle_witness_count_bits. (exists ff_lt_erc_ged_pair_first_rectangle_witness_count_bits_bound. ff_lt_erc_ged_pair_first_rectangle_witness_count_bits_bound + S ff_i_erc_ged_pair_first_rectangle_witness_count_bits = k) -> exists ff_bit_erc_ged_pair_first_rectangle_witness_count_bits. ((((exists ff_h_erc_ged_pair_first_rectangle_witness_count_bits_decoded. ff_h_erc_ged_pair_first_rectangle_witness_count_bits_decoded + S (ff_bit_erc_ged_pair_first_rectangle_witness_count_bits) = S ((S (ff_i_erc_ged_pair_first_rectangle_witness_count_bits)) * erc_row_scale_ged_pair_first_rectangle_witness)) /\ exists ff_q_erc_ged_pair_first_rectangle_witness_count_bits_decoded. erc_row_code_ged_pair_first_rectangle_witness = ff_q_erc_ged_pair_first_rectangle_witness_count_bits_decoded * S ((S (ff_i_erc_ged_pair_first_rectangle_witness_count_bits)) * erc_row_scale_ged_pair_first_rectangle_witness) + (ff_bit_erc_ged_pair_first_rectangle_witness_count_bits))) /\ (ff_bit_erc_ged_pair_first_rectangle_witness_count_bits = 0 \/ ff_bit_erc_ged_pair_first_rectangle_witness_count_bits = 1))))))))) /\ (exists ff_u_ged_pair_first_rectangle_sum ff_v_ged_pair_first_rectangle_sum. ((((exists ff_h_ged_pair_first_rectangle_sum_start. ff_h_ged_pair_first_rectangle_sum_start + S (0) = S ((S (0)) * ff_v_ged_pair_first_rectangle_sum)) /\ exists ff_q_ged_pair_first_rectangle_sum_start. ff_u_ged_pair_first_rectangle_sum = ff_q_ged_pair_first_rectangle_sum_start * S ((S (0)) * ff_v_ged_pair_first_rectangle_sum) + (0))) /\ ((((exists ff_h_ged_pair_first_rectangle_sum_terminal. ff_h_ged_pair_first_rectangle_sum_terminal + S (total) = S ((S (h)) * ff_v_ged_pair_first_rectangle_sum)) /\ exists ff_q_ged_pair_first_rectangle_sum_terminal. ff_u_ged_pair_first_rectangle_sum = ff_q_ged_pair_first_rectangle_sum_terminal * S ((S (h)) * ff_v_ged_pair_first_rectangle_sum) + (total))) /\ forall ff_i_ged_pair_first_rectangle_sum. (exists ff_lt_ged_pair_first_rectangle_sum_bound. ff_lt_ged_pair_first_rectangle_sum_bound + S ff_i_ged_pair_first_rectangle_sum = h) -> exists ff_a_ged_pair_first_rectangle_sum ff_r_ged_pair_first_rectangle_sum ff_s_ged_pair_first_rectangle_sum. ((((exists ff_h_ged_pair_first_rectangle_sum_summand. ff_h_ged_pair_first_rectangle_sum_summand + S (ff_a_ged_pair_first_rectangle_sum) = S ((S (ff_i_ged_pair_first_rectangle_sum)) * cc)) /\ exists ff_q_ged_pair_first_rectangle_sum_summand. cb = ff_q_ged_pair_first_rectangle_sum_summand * S ((S (ff_i_ged_pair_first_rectangle_sum)) * cc) + (ff_a_ged_pair_first_rectangle_sum))) /\ ((((exists ff_h_ged_pair_first_rectangle_sum_partial. ff_h_ged_pair_first_rectangle_sum_partial + S (ff_r_ged_pair_first_rectangle_sum) = S ((S (ff_i_ged_pair_first_rectangle_sum)) * ff_v_ged_pair_first_rectangle_sum)) /\ exists ff_q_ged_pair_first_rectangle_sum_partial. ff_u_ged_pair_first_rectangle_sum = ff_q_ged_pair_first_rectangle_sum_partial * S ((S (ff_i_ged_pair_first_rectangle_sum)) * ff_v_ged_pair_first_rectangle_sum) + (ff_r_ged_pair_first_rectangle_sum))) /\ ((((exists ff_h_ged_pair_first_rectangle_sum_successor. ff_h_ged_pair_first_rectangle_sum_successor + S (ff_s_ged_pair_first_rectangle_sum) = S ((S (S ff_i_ged_pair_first_rectangle_sum)) * ff_v_ged_pair_first_rectangle_sum)) /\ exists ff_q_ged_pair_first_rectangle_sum_successor. ff_u_ged_pair_first_rectangle_sum = ff_q_ged_pair_first_rectangle_sum_successor * S ((S (S ff_i_ged_pair_first_rectangle_sum)) * ff_v_ged_pair_first_rectangle_sum) + (ff_s_ged_pair_first_rectangle_sum))) /\ ff_s_ged_pair_first_rectangle_sum = ff_r_ged_pair_first_rectangle_sum + ff_a_ged_pair_first_rectangle_sum))))))) - 0072
specialize distinct_odd_prime_half_rectangle_total_exists p - 0073
specialize distinct_odd_prime_half_rectangle_total_exists q - 0074
specialize distinct_odd_prime_half_rectangle_total_exists h - 0075
specialize distinct_odd_prime_half_rectangle_total_exists k - 0076
apply distinct_odd_prime_half_rectangle_total_exists - 0077
exact hpodd - 0078
exact hqodd - 0079
exact hp - 0080
exact hq - 0081
exact hpq - 0082
cases hfirst_rectangle - 0083
cases hfirst_rectangle_witness - 0084
cases hfirst_rectangle_witness_witness - 0085
cases hfirst_rectangle_witness_witness_witness - 0086
have hsecond_rectangle : exists cb cc total. ((forall erc_row_ged_pair_second_rectangle. (exists erc_lt_gap_ged_pair_second_rectangle_bound. erc_lt_gap_ged_pair_second_rectangle_bound + S (erc_row_ged_pair_second_rectangle) = k) -> exists erc_count_ged_pair_second_rectangle. ((((exists ff_h_erc_ged_pair_second_rectangle_decoded. ff_h_erc_ged_pair_second_rectangle_decoded + S (erc_count_ged_pair_second_rectangle) = S ((S (erc_row_ged_pair_second_rectangle)) * cc)) /\ exists ff_q_erc_ged_pair_second_rectangle_decoded. cb = ff_q_erc_ged_pair_second_rectangle_decoded * S ((S (erc_row_ged_pair_second_rectangle)) * cc) + (erc_count_ged_pair_second_rectangle))) /\ (exists erc_row_code_ged_pair_second_rectangle_witness erc_row_scale_ged_pair_second_rectangle_witness. ((forall eri_column_erc_ged_pair_second_rectangle_witness_row. (exists eri_gap_erc_ged_pair_second_rectangle_witness_row_bound. eri_gap_erc_ged_pair_second_rectangle_witness_row_bound + S (eri_column_erc_ged_pair_second_rectangle_witness_row) = h) -> exists eri_bit_erc_ged_pair_second_rectangle_witness_row. ((((exists ff_h_eri_erc_ged_pair_second_rectangle_witness_row_decoded. ff_h_eri_erc_ged_pair_second_rectangle_witness_row_decoded + S (eri_bit_erc_ged_pair_second_rectangle_witness_row) = S ((S (eri_column_erc_ged_pair_second_rectangle_witness_row)) * erc_row_scale_ged_pair_second_rectangle_witness)) /\ exists ff_q_eri_erc_ged_pair_second_rectangle_witness_row_decoded. erc_row_code_ged_pair_second_rectangle_witness = ff_q_eri_erc_ged_pair_second_rectangle_witness_row_decoded * S ((S (eri_column_erc_ged_pair_second_rectangle_witness_row)) * erc_row_scale_ged_pair_second_rectangle_witness) + (eri_bit_erc_ged_pair_second_rectangle_witness_row))) /\ (((eri_bit_erc_ged_pair_second_rectangle_witness_row = 0 /\ ((exists eri_gap_erc_ged_pair_second_rectangle_witness_row_choice_left. eri_gap_erc_ged_pair_second_rectangle_witness_row_choice_left + S (p * S erc_row_ged_pair_second_rectangle) = q * S eri_column_erc_ged_pair_second_rectangle_witness_row) /\ ~(exists eri_gap_erc_ged_pair_second_rectangle_witness_row_choice_right. eri_gap_erc_ged_pair_second_rectangle_witness_row_choice_right + S (q * S eri_column_erc_ged_pair_second_rectangle_witness_row) = p * S erc_row_ged_pair_second_rectangle))) \/ (eri_bit_erc_ged_pair_second_rectangle_witness_row = 1 /\ ((exists eri_gap_erc_ged_pair_second_rectangle_witness_row_choice_right. eri_gap_erc_ged_pair_second_rectangle_witness_row_choice_right + S (q * S eri_column_erc_ged_pair_second_rectangle_witness_row) = p * S erc_row_ged_pair_second_rectangle) /\ ~(exists eri_gap_erc_ged_pair_second_rectangle_witness_row_choice_left. eri_gap_erc_ged_pair_second_rectangle_witness_row_choice_left + S (p * S erc_row_ged_pair_second_rectangle) = q * S eri_column_erc_ged_pair_second_rectangle_witness_row))))))) /\ (((exists ff_u_erc_ged_pair_second_rectangle_witness_count_sum ff_v_erc_ged_pair_second_rectangle_witness_count_sum. ((((exists ff_h_erc_ged_pair_second_rectangle_witness_count_sum_start. ff_h_erc_ged_pair_second_rectangle_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_ged_pair_second_rectangle_witness_count_sum)) /\ exists ff_q_erc_ged_pair_second_rectangle_witness_count_sum_start. ff_u_erc_ged_pair_second_rectangle_witness_count_sum = ff_q_erc_ged_pair_second_rectangle_witness_count_sum_start * S ((S (0)) * ff_v_erc_ged_pair_second_rectangle_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_ged_pair_second_rectangle_witness_count_sum_terminal. ff_h_erc_ged_pair_second_rectangle_witness_count_sum_terminal + S (erc_count_ged_pair_second_rectangle) = S ((S (h)) * ff_v_erc_ged_pair_second_rectangle_witness_count_sum)) /\ exists ff_q_erc_ged_pair_second_rectangle_witness_count_sum_terminal. ff_u_erc_ged_pair_second_rectangle_witness_count_sum = ff_q_erc_ged_pair_second_rectangle_witness_count_sum_terminal * S ((S (h)) * ff_v_erc_ged_pair_second_rectangle_witness_count_sum) + (erc_count_ged_pair_second_rectangle))) /\ forall ff_i_erc_ged_pair_second_rectangle_witness_count_sum. (exists ff_lt_erc_ged_pair_second_rectangle_witness_count_sum_bound. ff_lt_erc_ged_pair_second_rectangle_witness_count_sum_bound + S ff_i_erc_ged_pair_second_rectangle_witness_count_sum = h) -> exists ff_a_erc_ged_pair_second_rectangle_witness_count_sum ff_r_erc_ged_pair_second_rectangle_witness_count_sum ff_s_erc_ged_pair_second_rectangle_witness_count_sum. ((((exists ff_h_erc_ged_pair_second_rectangle_witness_count_sum_summand. ff_h_erc_ged_pair_second_rectangle_witness_count_sum_summand + S (ff_a_erc_ged_pair_second_rectangle_witness_count_sum) = S ((S (ff_i_erc_ged_pair_second_rectangle_witness_count_sum)) * erc_row_scale_ged_pair_second_rectangle_witness)) /\ exists ff_q_erc_ged_pair_second_rectangle_witness_count_sum_summand. erc_row_code_ged_pair_second_rectangle_witness = ff_q_erc_ged_pair_second_rectangle_witness_count_sum_summand * S ((S (ff_i_erc_ged_pair_second_rectangle_witness_count_sum)) * erc_row_scale_ged_pair_second_rectangle_witness) + (ff_a_erc_ged_pair_second_rectangle_witness_count_sum))) /\ ((((exists ff_h_erc_ged_pair_second_rectangle_witness_count_sum_partial. ff_h_erc_ged_pair_second_rectangle_witness_count_sum_partial + S (ff_r_erc_ged_pair_second_rectangle_witness_count_sum) = S ((S (ff_i_erc_ged_pair_second_rectangle_witness_count_sum)) * ff_v_erc_ged_pair_second_rectangle_witness_count_sum)) /\ exists ff_q_erc_ged_pair_second_rectangle_witness_count_sum_partial. ff_u_erc_ged_pair_second_rectangle_witness_count_sum = ff_q_erc_ged_pair_second_rectangle_witness_count_sum_partial * S ((S (ff_i_erc_ged_pair_second_rectangle_witness_count_sum)) * ff_v_erc_ged_pair_second_rectangle_witness_count_sum) + (ff_r_erc_ged_pair_second_rectangle_witness_count_sum))) /\ ((((exists ff_h_erc_ged_pair_second_rectangle_witness_count_sum_successor. ff_h_erc_ged_pair_second_rectangle_witness_count_sum_successor + S (ff_s_erc_ged_pair_second_rectangle_witness_count_sum) = S ((S (S ff_i_erc_ged_pair_second_rectangle_witness_count_sum)) * ff_v_erc_ged_pair_second_rectangle_witness_count_sum)) /\ exists ff_q_erc_ged_pair_second_rectangle_witness_count_sum_successor. ff_u_erc_ged_pair_second_rectangle_witness_count_sum = ff_q_erc_ged_pair_second_rectangle_witness_count_sum_successor * S ((S (S ff_i_erc_ged_pair_second_rectangle_witness_count_sum)) * ff_v_erc_ged_pair_second_rectangle_witness_count_sum) + (ff_s_erc_ged_pair_second_rectangle_witness_count_sum))) /\ ff_s_erc_ged_pair_second_rectangle_witness_count_sum = ff_r_erc_ged_pair_second_rectangle_witness_count_sum + ff_a_erc_ged_pair_second_rectangle_witness_count_sum)))))) /\ (forall ff_i_erc_ged_pair_second_rectangle_witness_count_bits. (exists ff_lt_erc_ged_pair_second_rectangle_witness_count_bits_bound. ff_lt_erc_ged_pair_second_rectangle_witness_count_bits_bound + S ff_i_erc_ged_pair_second_rectangle_witness_count_bits = h) -> exists ff_bit_erc_ged_pair_second_rectangle_witness_count_bits. ((((exists ff_h_erc_ged_pair_second_rectangle_witness_count_bits_decoded. ff_h_erc_ged_pair_second_rectangle_witness_count_bits_decoded + S (ff_bit_erc_ged_pair_second_rectangle_witness_count_bits) = S ((S (ff_i_erc_ged_pair_second_rectangle_witness_count_bits)) * erc_row_scale_ged_pair_second_rectangle_witness)) /\ exists ff_q_erc_ged_pair_second_rectangle_witness_count_bits_decoded. erc_row_code_ged_pair_second_rectangle_witness = ff_q_erc_ged_pair_second_rectangle_witness_count_bits_decoded * S ((S (ff_i_erc_ged_pair_second_rectangle_witness_count_bits)) * erc_row_scale_ged_pair_second_rectangle_witness) + (ff_bit_erc_ged_pair_second_rectangle_witness_count_bits))) /\ (ff_bit_erc_ged_pair_second_rectangle_witness_count_bits = 0 \/ ff_bit_erc_ged_pair_second_rectangle_witness_count_bits = 1))))))))) /\ (exists ff_u_ged_pair_second_rectangle_sum ff_v_ged_pair_second_rectangle_sum. ((((exists ff_h_ged_pair_second_rectangle_sum_start. ff_h_ged_pair_second_rectangle_sum_start + S (0) = S ((S (0)) * ff_v_ged_pair_second_rectangle_sum)) /\ exists ff_q_ged_pair_second_rectangle_sum_start. ff_u_ged_pair_second_rectangle_sum = ff_q_ged_pair_second_rectangle_sum_start * S ((S (0)) * ff_v_ged_pair_second_rectangle_sum) + (0))) /\ ((((exists ff_h_ged_pair_second_rectangle_sum_terminal. ff_h_ged_pair_second_rectangle_sum_terminal + S (total) = S ((S (k)) * ff_v_ged_pair_second_rectangle_sum)) /\ exists ff_q_ged_pair_second_rectangle_sum_terminal. ff_u_ged_pair_second_rectangle_sum = ff_q_ged_pair_second_rectangle_sum_terminal * S ((S (k)) * ff_v_ged_pair_second_rectangle_sum) + (total))) /\ forall ff_i_ged_pair_second_rectangle_sum. (exists ff_lt_ged_pair_second_rectangle_sum_bound. ff_lt_ged_pair_second_rectangle_sum_bound + S ff_i_ged_pair_second_rectangle_sum = k) -> exists ff_a_ged_pair_second_rectangle_sum ff_r_ged_pair_second_rectangle_sum ff_s_ged_pair_second_rectangle_sum. ((((exists ff_h_ged_pair_second_rectangle_sum_summand. ff_h_ged_pair_second_rectangle_sum_summand + S (ff_a_ged_pair_second_rectangle_sum) = S ((S (ff_i_ged_pair_second_rectangle_sum)) * cc)) /\ exists ff_q_ged_pair_second_rectangle_sum_summand. cb = ff_q_ged_pair_second_rectangle_sum_summand * S ((S (ff_i_ged_pair_second_rectangle_sum)) * cc) + (ff_a_ged_pair_second_rectangle_sum))) /\ ((((exists ff_h_ged_pair_second_rectangle_sum_partial. ff_h_ged_pair_second_rectangle_sum_partial + S (ff_r_ged_pair_second_rectangle_sum) = S ((S (ff_i_ged_pair_second_rectangle_sum)) * ff_v_ged_pair_second_rectangle_sum)) /\ exists ff_q_ged_pair_second_rectangle_sum_partial. ff_u_ged_pair_second_rectangle_sum = ff_q_ged_pair_second_rectangle_sum_partial * S ((S (ff_i_ged_pair_second_rectangle_sum)) * ff_v_ged_pair_second_rectangle_sum) + (ff_r_ged_pair_second_rectangle_sum))) /\ ((((exists ff_h_ged_pair_second_rectangle_sum_successor. ff_h_ged_pair_second_rectangle_sum_successor + S (ff_s_ged_pair_second_rectangle_sum) = S ((S (S ff_i_ged_pair_second_rectangle_sum)) * ff_v_ged_pair_second_rectangle_sum)) /\ exists ff_q_ged_pair_second_rectangle_sum_successor. ff_u_ged_pair_second_rectangle_sum = ff_q_ged_pair_second_rectangle_sum_successor * S ((S (S ff_i_ged_pair_second_rectangle_sum)) * ff_v_ged_pair_second_rectangle_sum) + (ff_s_ged_pair_second_rectangle_sum))) /\ ff_s_ged_pair_second_rectangle_sum = ff_r_ged_pair_second_rectangle_sum + ff_a_ged_pair_second_rectangle_sum))))))) - 0087
specialize distinct_odd_prime_half_rectangle_total_exists q - 0088
specialize distinct_odd_prime_half_rectangle_total_exists p - 0089
specialize distinct_odd_prime_half_rectangle_total_exists k - 0090
specialize distinct_odd_prime_half_rectangle_total_exists h - 0091
apply distinct_odd_prime_half_rectangle_total_exists - 0092
exact hqodd - 0093
exact hpodd - 0094
exact hq - 0095
exact hp - 0096
exact hqp - 0097
cases hsecond_rectangle - 0098
cases hsecond_rectangle_witness - 0099
cases hsecond_rectangle_witness_witness - 0100
cases hsecond_rectangle_witness_witness_witness - 0101
have hsum_identity : x7 + x15 = h * k - 0102
specialize distinct_odd_prime_eisenstein_quotient_sum_identity p - 0103
specialize distinct_odd_prime_eisenstein_quotient_sum_identity q - 0104
specialize distinct_odd_prime_eisenstein_quotient_sum_identity h - 0105
specialize distinct_odd_prime_eisenstein_quotient_sum_identity k - 0106
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x - 0107
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x1 - 0108
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x2 - 0109
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x3 - 0110
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x4 - 0111
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x5 - 0112
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x8 - 0113
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x9 - 0114
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x10 - 0115
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x11 - 0116
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x12 - 0117
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x13 - 0118
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x16 - 0119
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x17 - 0120
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x19 - 0121
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x20 - 0122
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x7 - 0123
specialize distinct_odd_prime_eisenstein_quotient_sum_identity x15 - 0124
apply distinct_odd_prime_eisenstein_quotient_sum_identity - 0125
exact hpodd - 0126
exact hqodd - 0127
exact hp - 0128
exact hq - 0129
exact hpq - 0130
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_left - 0131
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_left - 0132
exact hsecond_witness_witness_witness_witness_witness_witness_witness_witness_left - 0133
exact hsecond_witness_witness_witness_witness_witness_witness_witness_witness_right_left - 0134
exact hfirst_rectangle_witness_witness_witness_left - 0135
exact hsecond_rectangle_witness_witness_witness_left - 0136
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_right_left - 0137
exact hsecond_witness_witness_witness_witness_witness_witness_witness_witness_right_right_left - 0138
exists x6 - 0139
exists x14 - 0140
exists x7 - 0141
exists x15 - 0142
split - 0143
split - 0144
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_right_right_left - 0145
exact hsecond_witness_witness_witness_witness_witness_witness_witness_witness_right_right_right_left - 0146
split - 0147
split - 0148
exact hfirst_witness_witness_witness_witness_witness_witness_witness_witness_right_right_right_right - 0149
exact hsecond_witness_witness_witness_witness_witness_witness_witness_witness_right_right_right_right - 0150
exact hsum_identity