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 PA statement
forall q e. (exists fspm_u_zero_sum_input fspm_v_zero_sum_input. (0) + 2 * fspm_u_zero_sum_input = (q + e) + 2 * fspm_v_zero_sum_input) -> (exists fspm_u_zero_sum_result fspm_v_zero_sum_result. (q) + 2 * fspm_u_zero_sum_result = (e) + 2 * fspm_v_zero_sum_result)Structural proof guide
Generated structural guide
If q+e is zero modulo two, q and e have the same parity and are congruent.
Use the direct prerequisites mod_eq_symm, mod_two_zero_to_even, even_sum_parity_cases, matching_parity_mod_two as previously established PA formulas.
The proof proceeds by intermediate claims (3).
Referenced ingredients
Proof neighborhood
Direct dependencies
PA003L mod_eq_symm PA00D4 mod_two_zero_to_even PA00CA even_sum_parity_cases PA00CJ matching_parity_mod_twoDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Alpha-v25 checked-use theorem is independently kernel-checked when replayed; it is not a Stable theorem.
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–3
02Establish hsum_zeroL4–9
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mod eq symm.
03Establish hevenL10–13
04Establish hsameL14–22
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply even sum parity cases.
- L14
have hsame : (((exists fspm_even_q. q = 2 * fspm_even_q) /\ (exists fspm_even_e. e = 2 * fspm_even_e)) \/ ((exists fspm_odd_q. q = 2 * fspm_odd_q + 1) /\ (exists fspm_odd_e. e = 2 * fspm_odd_e + 1))) - L15
specialize even_sum_parity_cases q - L16
specialize even_sum_parity_cases e - L17
apply even_sum_parity_cases - L18
exact heven - L19
specialize matching_parity_mod_two q - L20
specialize matching_parity_mod_two e - L21
apply matching_parity_mod_two - L22
exact hsame
Original exact command ledger · 22 lines
- 0001
intro q - 0002
intro e - 0003
intro hzero - 0004
have hsum_zero : exists fspm_u_sum_zero fspm_v_sum_zero. (q + e) + 2 * fspm_u_sum_zero = (0) + 2 * fspm_v_sum_zero - 0005
specialize mod_eq_symm 2 - 0006
specialize mod_eq_symm 0 - 0007
specialize mod_eq_symm (q + e) - 0008
apply mod_eq_symm - 0009
exact hzero - 0010
have heven : exists fspm_even_sum. q + e = 2 * fspm_even_sum - 0011
specialize mod_two_zero_to_even (q + e) - 0012
apply mod_two_zero_to_even - 0013
exact hsum_zero - 0014
have hsame : (((exists fspm_even_q. q = 2 * fspm_even_q) /\ (exists fspm_even_e. e = 2 * fspm_even_e)) \/ ((exists fspm_odd_q. q = 2 * fspm_odd_q + 1) /\ (exists fspm_odd_e. e = 2 * fspm_odd_e + 1))) - 0015
specialize even_sum_parity_cases q - 0016
specialize even_sum_parity_cases e - 0017
apply even_sum_parity_cases - 0018
exact heven - 0019
specialize matching_parity_mod_two q - 0020
specialize matching_parity_mod_two e - 0021
apply matching_parity_mod_two - 0022
exact hsame