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
∀ B. ∀ p. ∀ k. Le(k,B) → Prime(p) → ¬k = 0 → (∃ x. ∃ y. ∃ z. ∃ n. p · k = x · x + y · y + z · z + n · n) → (∀ x. ∀ y. Prime(x) → ¬y = 0 → ¬y = 1 → (∃ z. ∃ n. ∃ m. ∃ i. x · y = z · z + n · n + m · m + i · i) → ∃ z. ¬z = 0 ∧ (Lt(z,y) ∧ (∃ n. ∃ m. ∃ i. ∃ j. x · z = n · n + m · m + i · i + j · j))) → ∃ x. ∃ y. ∃ z. ∃ n. p = x · x + y · y + z · z + n · nEvery 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 B p k. (exists fsd_bound. fsd_bound + k = B) -> ((~(p = 1) /\ forall frm_prime_left_fsd_p frm_prime_right_fsd_p. p = frm_prime_left_fsd_p * frm_prime_right_fsd_p -> frm_prime_left_fsd_p = 1 \/ frm_prime_right_fsd_p = 1)) -> ~(k = 0) -> (exists fsl_a_fsd_multiple fsl_b_fsd_multiple fsl_c_fsd_multiple fsl_d_fsd_multiple. (p * k) = fsl_a_fsd_multiple * fsl_a_fsd_multiple + fsl_b_fsd_multiple * fsl_b_fsd_multiple + fsl_c_fsd_multiple * fsl_c_fsd_multiple + fsl_d_fsd_multiple * fsl_d_fsd_multiple) -> (forall fsd_prime_universal fsd_multiplier_universal. ((~(fsd_prime_universal = 1) /\ forall frm_prime_left_fsd_universal_prime frm_prime_right_fsd_universal_prime. fsd_prime_universal = frm_prime_left_fsd_universal_prime * frm_prime_right_fsd_universal_prime -> frm_prime_left_fsd_universal_prime = 1 \/ frm_prime_right_fsd_universal_prime = 1)) -> ~(fsd_multiplier_universal = 0) -> ~(fsd_multiplier_universal = 1) -> (exists fsl_a_fsd_universal_source fsl_b_fsd_universal_source fsl_c_fsd_universal_source fsl_d_fsd_universal_source. (fsd_prime_universal * fsd_multiplier_universal) = fsl_a_fsd_universal_source * fsl_a_fsd_universal_source + fsl_b_fsd_universal_source * fsl_b_fsd_universal_source + fsl_c_fsd_universal_source * fsl_c_fsd_universal_source + fsl_d_fsd_universal_source * fsl_d_fsd_universal_source) -> exists fsd_smaller_universal. (~(fsd_smaller_universal = 0) /\ ((exists fsd_gap_universal. fsd_gap_universal + S fsd_smaller_universal = fsd_multiplier_universal) /\ (exists fsl_a_fsd_universal_target fsl_b_fsd_universal_target fsl_c_fsd_universal_target fsl_d_fsd_universal_target. (fsd_prime_universal * fsd_smaller_universal) = fsl_a_fsd_universal_target * fsl_a_fsd_universal_target + fsl_b_fsd_universal_target * fsl_b_fsd_universal_target + fsl_c_fsd_universal_target * fsl_c_fsd_universal_target + fsl_d_fsd_universal_target * fsl_d_fsd_universal_target)))) -> (exists fsl_a_fsd_prime_result fsl_b_fsd_prime_result fsl_c_fsd_prime_result fsl_d_fsd_prime_result. (p) = fsl_a_fsd_prime_result * fsl_a_fsd_prime_result + fsl_b_fsd_prime_result * fsl_b_fsd_prime_result + fsl_c_fsd_prime_result * fsl_c_fsd_prime_result + fsl_d_fsd_prime_result * fsl_d_fsd_prime_result)Proof neighborhood
Direct theorem prerequisites
Direct 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.
01Fix variables and assumptionsL1–1
Work with arbitrary variables or the premises of the current implication.
- L1
intro B
02Induction on BL2–9
03Separate the logical casesL10–10
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L10
exfalso
04Use earlier factsL11–14
05Fix variables and assumptionsL15–21
06Use earlier factsL22–23
07Separate the logical casesL24–24
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L24
cases eq_decidable
08Calculate and transport equalitiesL25–25
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L25
rewrite eq_decidable_left at hrepresented
09Use earlier factsL26–26
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L26
specialize mul_one p
10Calculate and transport equalitiesL27–27
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L27
rewrite mul_one at hrepresented
11Use earlier factsL28–28
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L28
exact hrepresented
12Establish hsmallerL29–36
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hstep.
- L29
have hsmaller : ∃ x. ¬x = 0 ∧ (Lt(x,k) ∧ (∃ y. ∃ z. ∃ n. ∃ m. p · x = y · y + z · z + n · n + m · m))Definitions: Lt(x,k)Original native command in the exact edition - L30
specialize hstep p - L31
specialize hstep k - L32
apply hstep - L33
exact hprime - L34
exact hnonzero - L35
exact eq_decidable_right - L36
exact hrepresented
13Separate the logical casesL37–39
14Establish hsuccessor_boundL40–46
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le trans.
15Establish hsmaller_boundL47–56
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le of succ le succ.
Original defined command ledger · 59 lines
- 0001
intro B - 0002
induction B - 0003
intro p - 0004
intro k - 0005
intro hbound - 0006
intro hprime - 0007
intro hnonzero - 0008
intro hrepresented - 0009
intro hstep - 0010
exfalso - 0011
apply hnonzero - 0012
specialize le_zero k - 0013
apply le_zero - 0014
exact hbound - 0015
intro p - 0016
intro k - 0017
intro hbound - 0018
intro hprime - 0019
intro hnonzero - 0020
intro hrepresented - 0021
intro hstep - 0022
specialize eq_decidable k - 0023
specialize eq_decidable 1 - 0024
cases eq_decidable - 0025
rewrite eq_decidable_left at hrepresented - 0026
specialize mul_one p - 0027
rewrite mul_one at hrepresented - 0028
exact hrepresented - 0029
have hsmaller : ∃ x. ¬x = 0 ∧ (Lt(x,k) ∧ (∃ y. ∃ z. ∃ n. ∃ m. p · x = y · y + z · z + n · n + m · m))Exact native replay line
have hsmaller : (exists r. (~(r = 0) /\ ((exists fsd_strict_gap. fsd_strict_gap + S r = k) /\ (exists fsl_a_fsd_strict_result fsl_b_fsd_strict_result fsl_c_fsd_strict_result fsl_d_fsd_strict_result. (p * r) = fsl_a_fsd_strict_result * fsl_a_fsd_strict_result + fsl_b_fsd_strict_result * fsl_b_fsd_strict_result + fsl_c_fsd_strict_result * fsl_c_fsd_strict_result + fsl_d_fsd_strict_result * fsl_d_fsd_strict_result)))) - 0030
specialize hstep p - 0031
specialize hstep k - 0032
apply hstep - 0033
exact hprime - 0034
exact hnonzero - 0035
exact eq_decidable_right - 0036
exact hrepresented - 0037
cases hsmaller - 0038
cases hsmaller_witness - 0039
cases hsmaller_witness_right - 0040
have hsuccessor_bound : Lt(x,S B)Exact native replay line
have hsuccessor_bound : exists t. t + S x = S B - 0041
specialize le_trans (S x) - 0042
specialize le_trans k - 0043
specialize le_trans (S B) - 0044
apply le_trans - 0045
exact hsmaller_witness_right_left - 0046
exact hbound - 0047
have hsmaller_bound : Le(x,B)Exact native replay line
have hsmaller_bound : exists t. t + x = B - 0048
specialize le_of_succ_le_succ x - 0049
specialize le_of_succ_le_succ B - 0050
apply le_of_succ_le_succ - 0051
exact hsuccessor_bound - 0052
specialize IH p - 0053
specialize IH x - 0054
apply IH - 0055
exact hsmaller_bound - 0056
exact hprime - 0057
exact hsmaller_witness_left - 0058
exact hsmaller_witness_right_right - 0059
exact hstep