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. ∀ r. ∀ x. ∀ y. Dvd(p,r · r + 1) → ModEq(p,r · x · (r · x),y · y) → Dvd(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 r x y. (exists ftcn_factor_root. (r * r + 1) = (p) * ftcn_factor_root) -> (exists ftcn_left_squared ftcn_right_squared. ((r * x) * (r * x)) + (p) * ftcn_left_squared = (y * y) + (p) * ftcn_right_squared) -> (exists ftcn_factor_norm. (x * x + y * y) = (p) * ftcn_factor_norm)Proof neighborhood
Direct theorem prerequisites
TS0014 negative_one_scaled_square_congruent_zero mod_eq_refl · Stable closed mod_eq_add · Stable closed mod_eq_symm · Stable closed mod_eq_trans · Stable closed add_comm · Stable closed TS0011 balanced_zero_congruence_implies_multipleDirect 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 hzeroL7–12
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply negative one scaled square congruent zero.
- L7
have hzero : ModEq(p,r · x · (r · x) + x · x,0)Definitions: ModEq(p,r · x · (r · x) + x · x,0)Original native command in the exact edition - L8
specialize negative_one_scaled_square_congruent_zero p - L9
specialize negative_one_scaled_square_congruent_zero r - L10
specialize negative_one_scaled_square_congruent_zero x - L11
apply negative_one_scaled_square_congruent_zero - L12
exact hroot
03Establish hsameL13–16
Establish this local claim before using it. It is not an additional assumption.
- L13
have hsame : ModEq(p,x · x,x · x)Definitions: ModEq(p,x · x,x · x)Original native command in the exact edition - L14
specialize mod_eq_refl p - L15
specialize mod_eq_refl (x * x) - L16
exact mod_eq_refl
04Establish haddL17–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mod eq add.
- L17
have hadd : ModEq(p,r · x · (r · x) + x · x,y · y + x · x)Definitions: ModEq(p,r · x · (r · x) + x · x,y · y + x · x)Original native command in the exact edition - L18
specialize mod_eq_add p - L19
specialize mod_eq_add ((r * x) * (r * x)) - L20
specialize mod_eq_add (y * y) - L21
specialize mod_eq_add (x * x) - L22
specialize mod_eq_add (x * x) - L23
apply mod_eq_add - L24
exact hsquare - L25
exact hsame
05Establish hreverseL26–31
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mod eq symm.
- L26
have hreverse : ModEq(p,y · y + x · x,r · x · (r · x) + x · x)Definitions: ModEq(p,y · y + x · x,r · x · (r · x) + x · x)Original native command in the exact edition - L27
specialize mod_eq_symm p - L28
specialize mod_eq_symm ((r * x) * (r * x) + x * x) - L29
specialize mod_eq_symm (y * y + x * x) - L30
apply mod_eq_symm - L31
exact hadd
06Establish hnormL32–39
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mod eq trans.
- L32
have hnorm : ModEq(p,y · y + x · x,0)Definitions: ModEq(p,y · y + x · x,0)Original native command in the exact edition - L33
specialize mod_eq_trans p - L34
specialize mod_eq_trans (y * y + x * x) - L35
specialize mod_eq_trans ((r * x) * (r * x) + x * x) - L36
specialize mod_eq_trans 0 - L37
apply mod_eq_trans - L38
exact hreverse - L39
exact hzero
07Establish horderL40–46
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add comm.
Original defined command ledger · 46 lines
- 0001
intro p - 0002
intro r - 0003
intro x - 0004
intro y - 0005
intro hroot - 0006
intro hsquare - 0007
have hzero : ModEq(p,r · x · (r · x) + x · x,0)Exact native replay line
have hzero : exists ftcn_left_norm_root ftcn_right_norm_root. ((r * x) * (r * x) + x * x) + (p) * ftcn_left_norm_root = (0) + (p) * ftcn_right_norm_root - 0008
specialize negative_one_scaled_square_congruent_zero p - 0009
specialize negative_one_scaled_square_congruent_zero r - 0010
specialize negative_one_scaled_square_congruent_zero x - 0011
apply negative_one_scaled_square_congruent_zero - 0012
exact hroot - 0013
have hsame : ModEq(p,x · x,x · x)Exact native replay line
have hsame : exists ftcn_left_norm_same ftcn_right_norm_same. (x * x) + (p) * ftcn_left_norm_same = (x * x) + (p) * ftcn_right_norm_same - 0014
specialize mod_eq_refl p - 0015
specialize mod_eq_refl (x * x) - 0016
exact mod_eq_refl - 0017
have hadd : ModEq(p,r · x · (r · x) + x · x,y · y + x · x)Exact native replay line
have hadd : exists ftcn_left_norm_added ftcn_right_norm_added. ((r * x) * (r * x) + x * x) + (p) * ftcn_left_norm_added = (y * y + x * x) + (p) * ftcn_right_norm_added - 0018
specialize mod_eq_add p - 0019
specialize mod_eq_add ((r * x) * (r * x)) - 0020
specialize mod_eq_add (y * y) - 0021
specialize mod_eq_add (x * x) - 0022
specialize mod_eq_add (x * x) - 0023
apply mod_eq_add - 0024
exact hsquare - 0025
exact hsame - 0026
have hreverse : ModEq(p,y · y + x · x,r · x · (r · x) + x · x)Exact native replay line
have hreverse : exists ftcn_left_norm_reverse ftcn_right_norm_reverse. (y * y + x * x) + (p) * ftcn_left_norm_reverse = ((r * x) * (r * x) + x * x) + (p) * ftcn_right_norm_reverse - 0027
specialize mod_eq_symm p - 0028
specialize mod_eq_symm ((r * x) * (r * x) + x * x) - 0029
specialize mod_eq_symm (y * y + x * x) - 0030
apply mod_eq_symm - 0031
exact hadd - 0032
have hnorm : ModEq(p,y · y + x · x,0)Exact native replay line
have hnorm : exists ftcn_left_norm_zero ftcn_right_norm_zero. (y * y + x * x) + (p) * ftcn_left_norm_zero = (0) + (p) * ftcn_right_norm_zero - 0033
specialize mod_eq_trans p - 0034
specialize mod_eq_trans (y * y + x * x) - 0035
specialize mod_eq_trans ((r * x) * (r * x) + x * x) - 0036
specialize mod_eq_trans 0 - 0037
apply mod_eq_trans - 0038
exact hreverse - 0039
exact hzero - 0040
have horder : y * y + x * x = x * x + y * y - 0041
apply add_comm - 0042
rewrite horder at hnorm - 0043
specialize balanced_zero_congruence_implies_multiple p - 0044
specialize balanced_zero_congruence_implies_multiple (x * x + y * y) - 0045
apply balanced_zero_congruence_implies_multiple - 0046
exact hnorm