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 p q r m s. (exists sdp_odd_prime_like_modulus. p = 2 * sdp_odd_prime_like_modulus + 1) -> (((s = 0 /\ r = m) \/ (s = 1 /\ r + m = p))) -> (exists sdp_u_signed_sum_result sdp_v_signed_sum_result. (q + r) + 2 * sdp_u_signed_sum_result = (q + m + s) + 2 * sdp_v_signed_sum_result)Structural proof guide
Generated structural guide
A lower/reflected signed remainder changes q+r to q+m+s only by an even amount.
Use the direct prerequisites odd_reflected_remainder_mod_two, mod_eq_refl, mod_eq_add, add_assoc as previously established PA formulas.
The proof proceeds by case analysis (3), intermediate claims (3), equality transport (6).
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-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–7
02Separate the logical casesL8–9
03Calculate and transport equalitiesL10–11
04Construct an explicit witnessL12–13
05Calculate and transport equalitiesL14–16
06Use earlier factsL17–17
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L17
apply PA3
07Separate the logical casesL18–18
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L18
cases hbranch_right
08Establish hrmodL19–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply odd reflected remainder mod two.
- L19
have hrmod : exists sdp_u_proof_r_reflected sdp_v_proof_r_reflected. (r) + 2 * sdp_u_proof_r_reflected = (m + 1) + 2 * sdp_v_proof_r_reflected - L20
specialize odd_reflected_remainder_mod_two p - L21
specialize odd_reflected_remainder_mod_two r - L22
specialize odd_reflected_remainder_mod_two m - L23
apply odd_reflected_remainder_mod_two - L24
exact hp - L25
exact hbranch_right_right
09Establish hqmodL26–29
10Establish hsumL30–39
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mod eq add.
- L30
have hsum : exists sdp_u_proof_signed_upper sdp_v_proof_signed_upper. (q + r) + 2 * sdp_u_proof_signed_upper = (q + (m + 1)) + 2 * sdp_v_proof_signed_upper - L31
specialize mod_eq_add 2 - L32
specialize mod_eq_add q - L33
specialize mod_eq_add q - L34
specialize mod_eq_add r - L35
specialize mod_eq_add (m + 1) - L36
apply mod_eq_add - L37
exact hqmod - L38
exact hrmod - L39
rewrite hbranch_right_left
11Use earlier factsL40–42
12Calculate and transport equalitiesL43–43
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L43
rewrite add_assoc
13Use earlier factsL44–44
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L44
exact hsum
Original exact command ledger · 44 lines
- 0001
intro p - 0002
intro q - 0003
intro r - 0004
intro m - 0005
intro s - 0006
intro hp - 0007
intro hbranch - 0008
cases hbranch - 0009
cases hbranch_left - 0010
rewrite hbranch_left_left - 0011
rewrite hbranch_left_right - 0012
exists 0 - 0013
exists 0 - 0014
rewrite PA5 - 0015
rewrite PA5 - 0016
symm - 0017
apply PA3 - 0018
cases hbranch_right - 0019
have hrmod : exists sdp_u_proof_r_reflected sdp_v_proof_r_reflected. (r) + 2 * sdp_u_proof_r_reflected = (m + 1) + 2 * sdp_v_proof_r_reflected - 0020
specialize odd_reflected_remainder_mod_two p - 0021
specialize odd_reflected_remainder_mod_two r - 0022
specialize odd_reflected_remainder_mod_two m - 0023
apply odd_reflected_remainder_mod_two - 0024
exact hp - 0025
exact hbranch_right_right - 0026
have hqmod : exists sdp_u_proof_q_refl sdp_v_proof_q_refl. (q) + 2 * sdp_u_proof_q_refl = (q) + 2 * sdp_v_proof_q_refl - 0027
specialize mod_eq_refl 2 - 0028
specialize mod_eq_refl q - 0029
exact mod_eq_refl - 0030
have hsum : exists sdp_u_proof_signed_upper sdp_v_proof_signed_upper. (q + r) + 2 * sdp_u_proof_signed_upper = (q + (m + 1)) + 2 * sdp_v_proof_signed_upper - 0031
specialize mod_eq_add 2 - 0032
specialize mod_eq_add q - 0033
specialize mod_eq_add q - 0034
specialize mod_eq_add r - 0035
specialize mod_eq_add (m + 1) - 0036
apply mod_eq_add - 0037
exact hqmod - 0038
exact hrmod - 0039
rewrite hbranch_right_left - 0040
specialize add_assoc q - 0041
specialize add_assoc m - 0042
specialize add_assoc 1 - 0043
rewrite add_assoc - 0044
exact hsum