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.
Exact expanded first-order arithmetic statement
forall p h x y d. p = 2 * h + 1 -> ((~(p = 1) /\ forall frm_prime_left_fsri_prime frm_prime_right_fsri_prime. p = frm_prime_left_fsri_prime * frm_prime_right_fsri_prime -> frm_prime_left_fsri_prime = 1 \/ frm_prime_right_fsri_prime = 1)) -> (exists fsri_gap_ordered_x. fsri_gap_ordered_x + (x) = (h)) -> (exists fsri_gap_ordered_y. fsri_gap_ordered_y + (y) = (h)) -> y = x + d -> (exists fsri_left_ordered_equal fsri_right_ordered_equal. (x * x) + (p) * fsri_left_ordered_equal = (y * y) + (p) * fsri_right_ordered_equal) -> x = yConstructive proof overview
Generated structural guide
On the inclusive odd-prime half range, congruent squares of ordered coordinates have equal coordinates.
The unchanged tactic script uses 9 declared prerequisites and contains 88 exact native proof lines.
dependency-curried kernel-checked theorem body; Alpha enrollment and checked-use authority follow separately sealed release evidence; Stable membership remains unchanged
Proof neighborhood
Direct dependencies
FS0048 four_square_ordered_square_congruence_factors euclid_prime_dvd_product Stable theorem; checked-use authorized odd_half_strictly_below_modulus Alpha theorem; checked-use authorized lt_of_le_of_lt Stable theorem; checked-use authorized FS0046 four_square_bounded_multiple_is_zero FS0045 four_square_half_sum_below_odd add_eq_zero_left Stable theorem; checked-use authorized add_eq_zero_right Stable theorem; checked-use authorized add_comm Stable theorem; checked-use authorizedDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
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 (3)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–11
Work with arbitrary variables or the premises of the current implication.
- L11
intro hsquares
03Establish hproductL12–19
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square ordered square congruence factors.
- L12
have hproduct : exists fsri_factor_ordered_product. (d * (y + x)) = (p) * fsri_factor_ordered_product - L13
specialize four_square_ordered_square_congruence_factors p - L14
specialize four_square_ordered_square_congruence_factors x - L15
specialize four_square_ordered_square_congruence_factors y - L16
specialize four_square_ordered_square_congruence_factors d - L17
apply four_square_ordered_square_congruence_factors - L18
exact horder - L19
exact hsquares
04Establish hsplitL20–26
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply euclid prime dvd product.
- L20
have hsplit : (exists fsri_factor_ordered_gap_divides. (d) = (p) * fsri_factor_ordered_gap_divides) \/ (exists fsri_factor_ordered_sum_divides. (y + x) = (p) * fsri_factor_ordered_sum_divides) - L21
specialize euclid_prime_dvd_product p - L22
specialize euclid_prime_dvd_product d - L23
specialize euclid_prime_dvd_product (y + x) - L24
apply euclid_prime_dvd_product - L25
exact hprime - L26
exact hproduct
05Separate the logical casesL27–27
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L27
cases hsplit
06Establish hdleyL28–28
Establish this local claim before using it. It is not an additional assumption.
- L28
have hdley : exists fsri_gap_ordered_gap_le_y. fsri_gap_ordered_gap_le_y + (d) = (y)
07Construct an explicit witnessL29–29
Supply the displayed value, then prove that it has the required property.
- L29
exists x
08Calculate and transport equalitiesL30–30
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L30
symm
09Use earlier factsL31–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L31
exact horder
10Establish hylpL32–41
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply lt of le of lt.
- L32
have hylp : exists fsri_gap_ordered_y_lt_prime. fsri_gap_ordered_y_lt_prime + S (y) = (p) - L33
specialize lt_of_le_of_lt y - L34
specialize lt_of_le_of_lt h - L35
specialize lt_of_le_of_lt p - L36
apply lt_of_le_of_lt - L37
exact hy - L38
specialize odd_half_strictly_below_modulus p - L39
specialize odd_half_strictly_below_modulus h - L40
apply odd_half_strictly_below_modulus - L41
exact hodd
11Establish hdlpL42–48
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply lt of le of lt.
12Establish hzeroL49–58
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square bounded multiple is zero.
13Use earlier factsL59–59
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L59
apply PA3
14Establish hsum_boundL60–68
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square half sum below odd.
- L60
have hsum_bound : exists fsri_gap_ordered_sum_lt_prime. fsri_gap_ordered_sum_lt_prime + S (y + x) = (p) - L61
specialize four_square_half_sum_below_odd p - L62
specialize four_square_half_sum_below_odd h - L63
specialize four_square_half_sum_below_odd y - L64
specialize four_square_half_sum_below_odd x - L65
apply four_square_half_sum_below_odd - L66
exact hodd - L67
exact hy - L68
exact hx
15Establish hsum_zeroL69–74
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square bounded multiple is zero.
16Establish hyzeroL75–79
17Establish hxzeroL80–88
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add eq zero right.
Original exact command ledger · 88 lines
- 0001
intro p - 0002
intro h - 0003
intro x - 0004
intro y - 0005
intro d - 0006
intro hodd - 0007
intro hprime - 0008
intro hx - 0009
intro hy - 0010
intro horder - 0011
intro hsquares - 0012
have hproduct : exists fsri_factor_ordered_product. (d * (y + x)) = (p) * fsri_factor_ordered_product - 0013
specialize four_square_ordered_square_congruence_factors p - 0014
specialize four_square_ordered_square_congruence_factors x - 0015
specialize four_square_ordered_square_congruence_factors y - 0016
specialize four_square_ordered_square_congruence_factors d - 0017
apply four_square_ordered_square_congruence_factors - 0018
exact horder - 0019
exact hsquares - 0020
have hsplit : (exists fsri_factor_ordered_gap_divides. (d) = (p) * fsri_factor_ordered_gap_divides) \/ (exists fsri_factor_ordered_sum_divides. (y + x) = (p) * fsri_factor_ordered_sum_divides) - 0021
specialize euclid_prime_dvd_product p - 0022
specialize euclid_prime_dvd_product d - 0023
specialize euclid_prime_dvd_product (y + x) - 0024
apply euclid_prime_dvd_product - 0025
exact hprime - 0026
exact hproduct - 0027
cases hsplit - 0028
have hdley : exists fsri_gap_ordered_gap_le_y. fsri_gap_ordered_gap_le_y + (d) = (y) - 0029
exists x - 0030
symm - 0031
exact horder - 0032
have hylp : exists fsri_gap_ordered_y_lt_prime. fsri_gap_ordered_y_lt_prime + S (y) = (p) - 0033
specialize lt_of_le_of_lt y - 0034
specialize lt_of_le_of_lt h - 0035
specialize lt_of_le_of_lt p - 0036
apply lt_of_le_of_lt - 0037
exact hy - 0038
specialize odd_half_strictly_below_modulus p - 0039
specialize odd_half_strictly_below_modulus h - 0040
apply odd_half_strictly_below_modulus - 0041
exact hodd - 0042
have hdlp : exists fsri_gap_ordered_gap_lt_prime. fsri_gap_ordered_gap_lt_prime + S (d) = (p) - 0043
specialize lt_of_le_of_lt d - 0044
specialize lt_of_le_of_lt y - 0045
specialize lt_of_le_of_lt p - 0046
apply lt_of_le_of_lt - 0047
exact hdley - 0048
exact hylp - 0049
have hzero : d = 0 - 0050
specialize four_square_bounded_multiple_is_zero p - 0051
specialize four_square_bounded_multiple_is_zero d - 0052
apply four_square_bounded_multiple_is_zero - 0053
exact hdlp - 0054
exact hsplit_left - 0055
rewrite hzero at horder - 0056
symm - 0057
trans x + 0 - 0058
exact horder - 0059
apply PA3 - 0060
have hsum_bound : exists fsri_gap_ordered_sum_lt_prime. fsri_gap_ordered_sum_lt_prime + S (y + x) = (p) - 0061
specialize four_square_half_sum_below_odd p - 0062
specialize four_square_half_sum_below_odd h - 0063
specialize four_square_half_sum_below_odd y - 0064
specialize four_square_half_sum_below_odd x - 0065
apply four_square_half_sum_below_odd - 0066
exact hodd - 0067
exact hy - 0068
exact hx - 0069
have hsum_zero : y + x = 0 - 0070
specialize four_square_bounded_multiple_is_zero p - 0071
specialize four_square_bounded_multiple_is_zero (y + x) - 0072
apply four_square_bounded_multiple_is_zero - 0073
exact hsum_bound - 0074
exact hsplit_right - 0075
have hyzero : y = 0 - 0076
specialize add_eq_zero_left y - 0077
specialize add_eq_zero_left x - 0078
apply add_eq_zero_left - 0079
exact hsum_zero - 0080
have hxzero : x = 0 - 0081
specialize add_eq_zero_right y - 0082
specialize add_eq_zero_right x - 0083
apply add_eq_zero_right - 0084
exact hsum_zero - 0085
trans 0 - 0086
exact hxzero - 0087
symm - 0088
exact hyzero