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
forall a b h. a * a * a * a + b * b * b * b = h * h -> (a = 0 \/ b = 0)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 a b h. a * a * a * a + b * b * b * b = h * h -> (a = 0 \/ b = 0)Proof neighborhood
Direct theorem prerequisites
PF002N fermat_four_no_square PF002P fermat_four_equation_height_nonzeroDirect 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–4
02Establish hacasesL5–6
03Separate the logical casesL7–8
04Use earlier factsL9–9
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L9
exact hacases_left
05Establish hbcasesL10–11
06Separate the logical casesL12–13
07Use earlier factsL14–14
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L14
exact hbcases_left
08Separate the logical casesL15–15
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L15
exfalso
09Use earlier factsL16–19
10Separate the logical casesL20–20
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L20
split
11Use earlier factsL21–21
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L21
exact hacases_right
12Separate the logical casesL22–22
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L22
split
13Use earlier factsL23–23
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L23
exact hbcases_right
14Separate the logical casesL24–24
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L24
split
15Fix variables and assumptionsL25–25
Work with arbitrary variables or the premises of the current implication.
- L25
intro hzero
16Use earlier factsL26–33
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 33 lines
- 0001
intro a - 0002
intro b - 0003
intro h - 0004
intro hequation - 0005
have hacases : a = 0 \/ ~(a = 0) - 0006
apply eq_decidable - 0007
cases hacases - 0008
left - 0009
exact hacases_left - 0010
have hbcases : b = 0 \/ ~(b = 0) - 0011
apply eq_decidable - 0012
cases hbcases - 0013
right - 0014
exact hbcases_left - 0015
exfalso - 0016
specialize fermat_four_no_square (a) - 0017
specialize fermat_four_no_square (b) - 0018
specialize fermat_four_no_square (h) - 0019
apply fermat_four_no_square - 0020
split - 0021
exact hacases_right - 0022
split - 0023
exact hbcases_right - 0024
split - 0025
intro hzero - 0026
specialize fermat_four_equation_height_nonzero (a) - 0027
specialize fermat_four_equation_height_nonzero (b) - 0028
specialize fermat_four_equation_height_nonzero (h) - 0029
apply fermat_four_equation_height_nonzero - 0030
exact hacases_right - 0031
exact hequation - 0032
exact hzero - 0033
exact hequation