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 n s. (((((p) * (p))) + (((n) * (n)))) = ((s) + (((((p) * (n))) + (((n) * (p))))))) -> ((s = 0 -> p = n) /\ (p = n -> s = 0))Constructive proof overview
Generated structural guide
A genuine natural signed square is zero exactly when the represented integer is zero.
The unchanged tactic script uses 5 declared prerequisites and contains 48 exact native proof lines.
Alpha v34 checked-use · first admitted v28 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
matrix_lattice_absolute_difference_exists Alpha theorem; checked-use authorized four_square_absolute_square_balance Alpha theorem; checked-use authorized GI0007 gaussian_signed_square_functional square_zero_root Alpha theorem; checked-use authorized zero_add 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 (1)
01Fix variables and assumptionsL1–4
02Separate the logical casesL5–5
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L5
split
03Fix variables and assumptionsL6–6
Work with arbitrary variables or the premises of the current implication.
- L6
intro hzero
04Use earlier factsL7–8
05Separate the logical casesL9–9
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L9
cases matrix_lattice_absolute_difference_exists
06Establish hmagnitudeL10–15
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply four square absolute square balance.
- L10
have hmagnitude : ((((p) * (p))) + (((n) * (n)))) = ((x * x) + (((((p) * (n))) + (((n) * (p)))))) - L11
specialize four_square_absolute_square_balance p - L12
specialize four_square_absolute_square_balance n - L13
specialize four_square_absolute_square_balance x - L14
apply four_square_absolute_square_balance - L15
exact matrix_lattice_absolute_difference_exists_witness
07Establish hsquarezeroL16–24
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian signed square functional.
- L16
have hsquarezero : x * x = s - L17
specialize gaussian_signed_square_functional p - L18
specialize gaussian_signed_square_functional n - L19
specialize gaussian_signed_square_functional x * x - L20
specialize gaussian_signed_square_functional s - L21
apply gaussian_signed_square_functional - L22
exact hmagnitude - L23
exact hsquare - L24
rewrite hzero at hsquarezero
08Establish hmagnitudezeroL25–28
09Separate the logical casesL29–29
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L29
cases matrix_lattice_absolute_difference_exists_witness
10Calculate and transport equalitiesL30–30
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L30
trans n + x
11Use earlier factsL31–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L31
exact matrix_lattice_absolute_difference_exists_witness_left
12Calculate and transport equalitiesL32–32
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L32
rewrite hmagnitudezero
13Use earlier factsL33–33
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L33
apply PA3
14Calculate and transport equalitiesL34–35
15Use earlier factsL36–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L36
exact matrix_lattice_absolute_difference_exists_witness_right
16Calculate and transport equalitiesL37–37
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L37
rewrite hmagnitudezero
17Use earlier factsL38–38
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L38
apply PA3
18Fix variables and assumptionsL39–39
Work with arbitrary variables or the premises of the current implication.
- L39
intro hequal
19Establish hzeroL40–48
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply gaussian signed square functional.
- L40
have hzero : ((((p) * (p))) + (((n) * (n)))) = ((0) + (((((p) * (n))) + (((n) * (p)))))) - L41
simp [hequal, zero_add] - L42
specialize gaussian_signed_square_functional p - L43
specialize gaussian_signed_square_functional n - L44
specialize gaussian_signed_square_functional s - L45
specialize gaussian_signed_square_functional 0 - L46
apply gaussian_signed_square_functional - L47
exact hsquare - L48
exact hzero
Original exact command ledger · 48 lines
- 0001
intro p - 0002
intro n - 0003
intro s - 0004
intro hsquare - 0005
split - 0006
intro hzero - 0007
specialize matrix_lattice_absolute_difference_exists p - 0008
specialize matrix_lattice_absolute_difference_exists n - 0009
cases matrix_lattice_absolute_difference_exists - 0010
have hmagnitude : ((((p) * (p))) + (((n) * (n)))) = ((x * x) + (((((p) * (n))) + (((n) * (p)))))) - 0011
specialize four_square_absolute_square_balance p - 0012
specialize four_square_absolute_square_balance n - 0013
specialize four_square_absolute_square_balance x - 0014
apply four_square_absolute_square_balance - 0015
exact matrix_lattice_absolute_difference_exists_witness - 0016
have hsquarezero : x * x = s - 0017
specialize gaussian_signed_square_functional p - 0018
specialize gaussian_signed_square_functional n - 0019
specialize gaussian_signed_square_functional x * x - 0020
specialize gaussian_signed_square_functional s - 0021
apply gaussian_signed_square_functional - 0022
exact hmagnitude - 0023
exact hsquare - 0024
rewrite hzero at hsquarezero - 0025
have hmagnitudezero : x = 0 - 0026
specialize square_zero_root x - 0027
apply square_zero_root - 0028
exact hsquarezero - 0029
cases matrix_lattice_absolute_difference_exists_witness - 0030
trans n + x - 0031
exact matrix_lattice_absolute_difference_exists_witness_left - 0032
rewrite hmagnitudezero - 0033
apply PA3 - 0034
symm - 0035
trans p + x - 0036
exact matrix_lattice_absolute_difference_exists_witness_right - 0037
rewrite hmagnitudezero - 0038
apply PA3 - 0039
intro hequal - 0040
have hzero : ((((p) * (p))) + (((n) * (n)))) = ((0) + (((((p) * (n))) + (((n) * (p)))))) - 0041
simp [hequal, zero_add] - 0042
specialize gaussian_signed_square_functional p - 0043
specialize gaussian_signed_square_functional n - 0044
specialize gaussian_signed_square_functional s - 0045
specialize gaussian_signed_square_functional 0 - 0046
apply gaussian_signed_square_functional - 0047
exact hsquare - 0048
exact hzero