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. ∀ s. ∀ a. ∀ b. Prime(p) → FloorSqrt(p,s) → Le(a,s) → Le(b,s) → Lt(0,a · a + b · b) → Dvd(p,a · a + b · b) → p = a · a + b · bEvery 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 s a b. ((~(p = 1) /\ forall frm_prime_left_ftsp_prime frm_prime_right_ftsp_prime. p = frm_prime_left_ftsp_prime * frm_prime_right_ftsp_prime -> frm_prime_left_ftsp_prime = 1 \/ frm_prime_right_ftsp_prime = 1)) -> (((exists bcs_sqrt_lower_gap_ftsp_prime_floor. bcs_sqrt_lower_gap_ftsp_prime_floor + (s) * (s) = (p)) /\ exists bcs_sqrt_upper_gap_ftsp_prime_floor. bcs_sqrt_upper_gap_ftsp_prime_floor + S (p) = S (s) * S (s))) -> (exists ftsp_weak_representation_first. ftsp_weak_representation_first + (a) = s) -> (exists ftsp_weak_representation_second. ftsp_weak_representation_second + (b) = s) -> (exists ftsp_gap_representation_positive. ftsp_gap_representation_positive + S (0) = a * a + b * b) -> (exists k. a * a + b * b = p * k) -> p = a * a + b * bProof neighborhood
Direct theorem prerequisites
TS000H prime_floor_bounded_two_square_norm_below_double TS000B bounded_divisible_two_square_norm_equals_primeDirect 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–10
02Establish hupperL11–20
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime floor bounded two square norm below double.
- L11
have hupper : Lt(a · a + b · b,p + p)Definitions: Lt(a · a + b · b,p + p)Original native command in the exact edition - L12
specialize prime_floor_bounded_two_square_norm_below_double p - L13
specialize prime_floor_bounded_two_square_norm_below_double s - L14
specialize prime_floor_bounded_two_square_norm_below_double a - L15
specialize prime_floor_bounded_two_square_norm_below_double b - L16
apply prime_floor_bounded_two_square_norm_below_double - L17
exact hprime - L18
exact hfloor - L19
exact hfirst - L20
exact hsecond
03Use earlier factsL21–27
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 27 lines
- 0001
intro p - 0002
intro s - 0003
intro a - 0004
intro b - 0005
intro hprime - 0006
intro hfloor - 0007
intro hfirst - 0008
intro hsecond - 0009
intro hpositive - 0010
intro hdivisible - 0011
have hupper : Lt(a · a + b · b,p + p)Exact native replay line
have hupper : exists k. k + S (a * a + b * b) = p + p - 0012
specialize prime_floor_bounded_two_square_norm_below_double p - 0013
specialize prime_floor_bounded_two_square_norm_below_double s - 0014
specialize prime_floor_bounded_two_square_norm_below_double a - 0015
specialize prime_floor_bounded_two_square_norm_below_double b - 0016
apply prime_floor_bounded_two_square_norm_below_double - 0017
exact hprime - 0018
exact hfloor - 0019
exact hfirst - 0020
exact hsecond - 0021
specialize bounded_divisible_two_square_norm_equals_prime p - 0022
specialize bounded_divisible_two_square_norm_equals_prime a - 0023
specialize bounded_divisible_two_square_norm_equals_prime b - 0024
apply bounded_divisible_two_square_norm_equals_prime - 0025
exact hpositive - 0026
exact hdivisible - 0027
exact hupper