Exact expanded PA statement
forall p q e f h k. p = 2 * h + 1 -> q = 2 * k + 1 -> (((((exists qr_x_qrp_pq. exists qr_u_qrp_pq qr_v_qrp_pq. qr_x_qrp_pq * qr_x_qrp_pq + p * qr_u_qrp_pq = q + p * qr_v_qrp_pq) -> (exists qrp_even_e_even. e = 2 * qrp_even_e_even)) /\ ((exists qrp_even_e_even. e = 2 * qrp_even_e_even) -> (exists qr_x_qrp_pq. exists qr_u_qrp_pq qr_v_qrp_pq. qr_x_qrp_pq * qr_x_qrp_pq + p * qr_u_qrp_pq = q + p * qr_v_qrp_pq))) /\ (((~(exists qr_x_qrp_pq. exists qr_u_qrp_pq qr_v_qrp_pq. qr_x_qrp_pq * qr_x_qrp_pq + p * qr_u_qrp_pq = q + p * qr_v_qrp_pq)) -> (exists qrp_odd_e_odd. e = 2 * qrp_odd_e_odd + 1)) /\ ((exists qrp_odd_e_odd. e = 2 * qrp_odd_e_odd + 1) -> ~(exists qr_x_qrp_pq. exists qr_u_qrp_pq qr_v_qrp_pq. qr_x_qrp_pq * qr_x_qrp_pq + p * qr_u_qrp_pq = q + p * qr_v_qrp_pq))))) -> (((((exists qr_x_qrp_qp. exists qr_u_qrp_qp qr_v_qrp_qp. qr_x_qrp_qp * qr_x_qrp_qp + q * qr_u_qrp_qp = p + q * qr_v_qrp_qp) -> (exists qrp_even_f_even. f = 2 * qrp_even_f_even)) /\ ((exists qrp_even_f_even. f = 2 * qrp_even_f_even) -> (exists qr_x_qrp_qp. exists qr_u_qrp_qp qr_v_qrp_qp. qr_x_qrp_qp * qr_x_qrp_qp + q * qr_u_qrp_qp = p + q * qr_v_qrp_qp))) /\ (((~(exists qr_x_qrp_qp. exists qr_u_qrp_qp qr_v_qrp_qp. qr_x_qrp_qp * qr_x_qrp_qp + q * qr_u_qrp_qp = p + q * qr_v_qrp_qp)) -> (exists qrp_odd_f_odd. f = 2 * qrp_odd_f_odd + 1)) /\ ((exists qrp_odd_f_odd. f = 2 * qrp_odd_f_odd + 1) -> ~(exists qr_x_qrp_qp. exists qr_u_qrp_qp qr_v_qrp_qp. qr_x_qrp_qp * qr_x_qrp_qp + q * qr_u_qrp_qp = p + q * qr_v_qrp_qp))))) -> (exists qrp_u_count_product qrp_v_count_product. e + f + 2 * qrp_u_count_product = h * k + 2 * qrp_v_count_product) -> ((exists qrp_one_p. p = 4 * qrp_one_p + 1) \/ (exists qrp_one_q. q = 4 * qrp_one_q + 1)) -> ((((exists qr_x_qrp_pq. exists qr_u_qrp_pq qr_v_qrp_pq. qr_x_qrp_pq * qr_x_qrp_pq + p * qr_u_qrp_pq = q + p * qr_v_qrp_pq) /\ (exists qr_x_qrp_qp. exists qr_u_qrp_qp qr_v_qrp_qp. qr_x_qrp_qp * qr_x_qrp_qp + q * qr_u_qrp_qp = p + q * qr_v_qrp_qp)) \/ (~(exists qr_x_qrp_pq. exists qr_u_qrp_pq qr_v_qrp_pq. qr_x_qrp_pq * qr_x_qrp_pq + p * qr_u_qrp_pq = q + p * qr_v_qrp_pq) /\ ~(exists qr_x_qrp_qp. exists qr_u_qrp_qp qr_v_qrp_qp. qr_x_qrp_qp * qr_x_qrp_qp + q * qr_u_qrp_qp = p + q * qr_v_qrp_qp))))Structural proof guide
Generated structural guide
A one-mod-four input forces equal cross-residue status.
Use the direct prerequisites odd_half_even_iff_mod4_one, even_mul_left, even_mul_right, qres_same_status_from_even_half_product_mod_two as previously established PA formulas.
The proof proceeds by case analysis (3), intermediate claims (5).
Referenced ingredients
Proof neighborhood
Direct dependencies
PA00FJ odd_half_even_iff_mod4_one PA006U even_mul_left PA006E even_mul_right PA00FN qres_same_status_from_even_half_product_mod_twoDirect 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 e - 0004
intro f - 0005
intro h - 0006
intro k - 0007
intro hp - 0008
intro hq - 0009
intro heclass - 0010
intro hfclass - 0011
intro hmod - 0012
intro hone - 0013
have hproduct : exists qrp_even_half_product. h * k = 2 * qrp_even_half_product - 0014
cases hone - 0015
have hbridge : (((exists qrp_even_h. h = 2 * qrp_even_h) -> (exists qrp_one_p. p = 4 * qrp_one_p + 1)) /\ ((exists qrp_one_p. p = 4 * qrp_one_p + 1) -> (exists qrp_even_h. h = 2 * qrp_even_h))) - 0016
specialize odd_half_even_iff_mod4_one p - 0017
specialize odd_half_even_iff_mod4_one h - 0018
apply odd_half_even_iff_mod4_one - 0019
exact hp - 0020
cases hbridge - 0021
have hhalf : exists qrp_even_h. h = 2 * qrp_even_h - 0022
apply hbridge_right - 0023
exact hone_left - 0024
specialize even_mul_left h - 0025
specialize even_mul_left k - 0026
apply even_mul_left - 0027
exact hhalf - 0028
have hbridge : (((exists qrp_even_k. k = 2 * qrp_even_k) -> (exists qrp_one_q. q = 4 * qrp_one_q + 1)) /\ ((exists qrp_one_q. q = 4 * qrp_one_q + 1) -> (exists qrp_even_k. k = 2 * qrp_even_k))) - 0029
specialize odd_half_even_iff_mod4_one q - 0030
specialize odd_half_even_iff_mod4_one k - 0031
apply odd_half_even_iff_mod4_one - 0032
exact hq - 0033
cases hbridge - 0034
have hhalf : exists qrp_even_k. k = 2 * qrp_even_k - 0035
apply hbridge_right - 0036
exact hone_right - 0037
specialize even_mul_right h - 0038
specialize even_mul_right k - 0039
apply even_mul_right - 0040
exact hhalf - 0041
specialize qres_same_status_from_even_half_product_mod_two p - 0042
specialize qres_same_status_from_even_half_product_mod_two q - 0043
specialize qres_same_status_from_even_half_product_mod_two e - 0044
specialize qres_same_status_from_even_half_product_mod_two f - 0045
specialize qres_same_status_from_even_half_product_mod_two h - 0046
specialize qres_same_status_from_even_half_product_mod_two k - 0047
apply qres_same_status_from_even_half_product_mod_two - 0048
exact heclass - 0049
exact hfclass - 0050
exact hmod - 0051
exact hproduct