PA00FS

qres_opposite_status_from_odd_count_sum

Alpha v16 checked-use theorem · independently closed; not Stable

An odd sum of Gauss counts gives opposite cross-residue status.

Exact expanded PA statement

forall p q e f. (((((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_odd_count_sum. e + f = 2 * qrp_odd_count_sum + 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

An odd sum of Gauss counts gives opposite cross-residue status.

Use the direct prerequisites odd_sum_parity_cases as previously established PA formulas.

The proof proceeds by case analysis (9), intermediate claims (1).

Referenced ingredients

Proof neighborhood

Direct dependencies

Direct 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.

  1. 0001intro p
  2. 0002intro q
  3. 0003intro e
  4. 0004intro f
  5. 0005intro heclass
  6. 0006intro hfclass
  7. 0007intro hsum
  8. 0008cases heclass
  9. 0009cases heclass_left
  10. 0010cases heclass_right
  11. 0011cases hfclass
  12. 0012cases hfclass_left
  13. 0013cases hfclass_right
  14. 0014have hcases : (((exists qrp_even_e_cases. e = 2 * qrp_even_e_cases) /\ (exists qrp_odd_f_cases. f = 2 * qrp_odd_f_cases + 1)) \/ ((exists qrp_odd_e_cases. e = 2 * qrp_odd_e_cases + 1) /\ (exists qrp_even_f_cases. f = 2 * qrp_even_f_cases)))
  15. 0015specialize odd_sum_parity_cases e
  16. 0016specialize odd_sum_parity_cases f
  17. 0017apply odd_sum_parity_cases
  18. 0018exact hsum
  19. 0019cases hcases
  20. 0020cases hcases_left
  21. 0021left
  22. 0022split
  23. 0023apply heclass_left_right
  24. 0024exact hcases_left_left
  25. 0025intro hqp
  26. 0026apply hfclass_right_right
  27. 0027exact hcases_left_right
  28. 0028exact hqp
  29. 0029cases hcases_right
  30. 0030right
  31. 0031split
  32. 0032intro hpq
  33. 0033apply heclass_right_right
  34. 0034exact hcases_right_left
  35. 0035exact hpq
  36. 0036apply hfclass_left_right
  37. 0037exact hcases_right_right