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
∀ m. ∀ n. ∀ d. m · m = n · n + d → Coprime(m,n) → Coprime(d,m)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 m n d. m * m = n * n + d -> (forall pff_divisor_primitive_parameters. (exists pff_left_primitive_parameters. (m) = pff_divisor_primitive_parameters * pff_left_primitive_parameters) -> (exists pff_right_primitive_parameters. (n) = pff_divisor_primitive_parameters * pff_right_primitive_parameters) -> pff_divisor_primitive_parameters = 1) -> (forall pff_divisor_gap_first_result. (exists pff_left_gap_first_result. (d) = pff_divisor_gap_first_result * pff_left_gap_first_result) -> (exists pff_right_gap_first_result. (m) = pff_divisor_gap_first_result * pff_right_gap_first_result) -> pff_divisor_gap_first_result = 1)Proof neighborhood
Direct theorem prerequisites
PF000O pythagorean_parameter_divisor_divides_square divides_remainder · Stable closed mul_one · Stable closed add_comm · Stable closed coprime_mul_right · Stable closedDirect 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 (1)
01Fix variables and assumptionsL1–8
02Establish hmsquareL9–13
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pythagorean parameter divisor divides square.
- L9
have hmsquare : Dvd(divisor,m · m)Definitions: Dvd(divisor,m · m)Original native command in the exact edition - L10
specialize pythagorean_parameter_divisor_divides_square divisor - L11
specialize pythagorean_parameter_divisor_divides_square m - L12
apply pythagorean_parameter_divisor_divides_square - L13
exact hm
03Establish hnsquareL14–23
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divides remainder.
- L14
have hnsquare : Dvd(divisor,n · n)Definitions: Dvd(divisor,n · n)Original native command in the exact edition - L15
specialize divides_remainder divisor - L16
specialize divides_remainder (m * m) - L17
specialize divides_remainder d - L18
specialize divides_remainder 1 - L19
specialize divides_remainder (n * n) - L20
apply divides_remainder - L21
exact hmsquare - L22
exact hd - L23
specialize mul_one d
04Calculate and transport equalitiesL24–25
05Use earlier factsL26–27
06Establish hsquarecopL28–37
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply coprime mul right.
- L28
have hsquarecop : Coprime(m,n · n)Definitions: Coprime(m,n · n)Original native command in the exact edition - L29
specialize coprime_mul_right m - L30
specialize coprime_mul_right n - L31
specialize coprime_mul_right n - L32
apply coprime_mul_right - L33
exact hcoprime - L34
exact hcoprime - L35
specialize hsquarecop divisor - L36
apply hsquarecop - L37
exact hm
07Use earlier factsL38–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L38
exact hnsquare
Original defined command ledger · 38 lines
- 0001
intro m - 0002
intro n - 0003
intro d - 0004
intro hgap - 0005
intro hcoprime - 0006
intro divisor - 0007
intro hd - 0008
intro hm - 0009
have hmsquare : Dvd(divisor,m · m)Exact native replay line
have hmsquare : exists q. m * m = divisor * q - 0010
specialize pythagorean_parameter_divisor_divides_square divisor - 0011
specialize pythagorean_parameter_divisor_divides_square m - 0012
apply pythagorean_parameter_divisor_divides_square - 0013
exact hm - 0014
have hnsquare : Dvd(divisor,n · n)Exact native replay line
have hnsquare : exists q. n * n = divisor * q - 0015
specialize divides_remainder divisor - 0016
specialize divides_remainder (m * m) - 0017
specialize divides_remainder d - 0018
specialize divides_remainder 1 - 0019
specialize divides_remainder (n * n) - 0020
apply divides_remainder - 0021
exact hmsquare - 0022
exact hd - 0023
specialize mul_one d - 0024
rewrite mul_one - 0025
trans n * n + d - 0026
exact hgap - 0027
apply add_comm - 0028
have hsquarecop : Coprime(m,n · n)Exact native replay line
have hsquarecop : forall pff_divisor_first_square_local. (exists pff_left_first_square_local. (m) = pff_divisor_first_square_local * pff_left_first_square_local) -> (exists pff_right_first_square_local. (n * n) = pff_divisor_first_square_local * pff_right_first_square_local) -> pff_divisor_first_square_local = 1 - 0029
specialize coprime_mul_right m - 0030
specialize coprime_mul_right n - 0031
specialize coprime_mul_right n - 0032
apply coprime_mul_right - 0033
exact hcoprime - 0034
exact hcoprime - 0035
specialize hsquarecop divisor - 0036
apply hsquarecop - 0037
exact hm - 0038
exact hnsquare