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.
Statement with defined notation
∀ p. ∀ a. ∀ b. Prime(p) → Mod4Three(p) → Dvd(p,a · a + b · b) → ∃ x. ∃ y. a = p · x ∧ (b = p · y ∧ a · a + b · b = p · p · (x · x + y · y))Every purple notation token opens its conservative definition. This reading surface never changes the unchanged intuitionistic kernel or confers checked-use authority.
Definitions used by this theorem
In the theorem statement
In local proof propositions
Exact expanded first-order statement
forall p a b. ((~(p = 1) /\ forall frm_prime_left_ftsv_prime frm_prime_right_ftsv_prime. p = frm_prime_left_ftsv_prime * frm_prime_right_ftsv_prime -> frm_prime_left_ftsv_prime = 1 \/ frm_prime_right_ftsv_prime = 1)) -> (exists ftsc_four_three_ftsv_prime. (p) = 4 * ftsc_four_three_ftsv_prime + 3) -> (exists ftcn_factor_ftsv_norm_divides. (a * a + b * b) = (p) * ftcn_factor_ftsv_norm_divides) -> (exists ftsv_first_extracted ftsv_second_extracted. ((a = p * ftsv_first_extracted) /\ ((b = p * ftsv_second_extracted) /\ (a * a + b * b = (p * p) * (ftsv_first_extracted * ftsv_first_extracted + ftsv_second_extracted * ftsv_second_extracted)))))Proof neighborhood
Direct theorem prerequisites
TS0027 three_mod_four_prime_divides_two_square_norm_divides_both TS003K two_square_common_divisor_extracts_squared_factorDirect theorem dependents
Definition-aware tactic body
Only propositions whose conservative expansion has been checked for exact first-order equivalence are compacted. Every changed line retains its immutable exact replay command.
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 (2)
01Fix variables and assumptionsL1–6
02Establish hbothL7–14
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply three mod four prime divides two square norm divides both.
- L7
have hboth : Dvd(p,a) ∧ Dvd(p,b)Definitions: Dvd(p,a)Dvd(p,b)Original native command in the exact edition - L8
specialize three_mod_four_prime_divides_two_square_norm_divides_both p - L9
specialize three_mod_four_prime_divides_two_square_norm_divides_both a - L10
specialize three_mod_four_prime_divides_two_square_norm_divides_both b - L11
apply three_mod_four_prime_divides_two_square_norm_divides_both - L12
exact hprime - L13
exact hthree - L14
exact hnorm
03Separate the logical casesL15–15
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L15
cases hboth
04Use earlier factsL16–21
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 21 lines
- 0001
intro p - 0002
intro a - 0003
intro b - 0004
intro hprime - 0005
intro hthree - 0006
intro hnorm - 0007
have hboth : Dvd(p,a) ∧ Dvd(p,b)Exact native replay line
have hboth : (exists ftcn_factor_ftsv_first_divides. (a) = (p) * ftcn_factor_ftsv_first_divides) /\ (exists ftcn_factor_ftsv_second_divides. (b) = (p) * ftcn_factor_ftsv_second_divides) - 0008
specialize three_mod_four_prime_divides_two_square_norm_divides_both p - 0009
specialize three_mod_four_prime_divides_two_square_norm_divides_both a - 0010
specialize three_mod_four_prime_divides_two_square_norm_divides_both b - 0011
apply three_mod_four_prime_divides_two_square_norm_divides_both - 0012
exact hprime - 0013
exact hthree - 0014
exact hnorm - 0015
cases hboth - 0016
specialize two_square_common_divisor_extracts_squared_factor p - 0017
specialize two_square_common_divisor_extracts_squared_factor a - 0018
specialize two_square_common_divisor_extracts_squared_factor b - 0019
apply two_square_common_divisor_extracts_squared_factor - 0020
exact hboth_left - 0021
exact hboth_right