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 z up us un ut vp vs vn vt. z = ((((up) + (us)) * S ((up) + (us)) + ((us) + (us))) + (((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut)))) * S ((((up) + (us)) * S ((up) + (us)) + ((us) + (us))) + (((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut)))) + ((((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut))) + (((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut)))) -> z = ((((vp) + (vs)) * S ((vp) + (vs)) + ((vs) + (vs))) + (((vn) + (vt)) * S ((vn) + (vt)) + ((vt) + (vt)))) * S ((((vp) + (vs)) * S ((vp) + (vs)) + ((vs) + (vs))) + (((vn) + (vt)) * S ((vn) + (vt)) + ((vt) + (vt)))) + ((((vn) + (vt)) * S ((vn) + (vt)) + ((vt) + (vt))) + (((vn) + (vt)) * S ((vn) + (vt)) + ((vt) + (vt)))) -> (up = vp /\ (us = vs /\ (un = vn /\ ut = vt)))Constructive proof overview
Generated structural guide
An exact nested doubled-Cantor cofactor record uniquely determines all four minor-code components.
The unchanged tactic script uses 1 declared prerequisite and contains 48 exact native proof lines.
Alpha v34 checked-use · first admitted v25 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
pair_code_injective Alpha 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.
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–11
Work with arbitrary variables or the premises of the current implication.
- L11
intro hsecond
03Establish houterL12–20
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pair code injective.
- L12
have houter : ((up) + (us)) * S ((up) + (us)) + ((us) + (us)) = ((vp) + (vs)) * S ((vp) + (vs)) + ((vs) + (vs)) /\ ((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut)) = ((vn) + (vt)) * S ((vn) + (vt)) + ((vt) + (vt)) - L13
specialize pair_code_injective z - L14
specialize pair_code_injective (((up) + (us)) * S ((up) + (us)) + ((us) + (us))) - L15
specialize pair_code_injective (((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut))) - L16
specialize pair_code_injective (((vp) + (vs)) * S ((vp) + (vs)) + ((vs) + (vs))) - L17
specialize pair_code_injective (((vn) + (vt)) * S ((vn) + (vt)) + ((vt) + (vt))) - L18
apply pair_code_injective - L19
exact hfirst - L20
exact hsecond
04Separate the logical casesL21–21
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L21
cases houter
05Establish hpositiveL22–30
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pair code injective.
- L22
have hpositive : up = vp /\ us = vs - L23
specialize pair_code_injective (((up) + (us)) * S ((up) + (us)) + ((us) + (us))) - L24
specialize pair_code_injective up - L25
specialize pair_code_injective us - L26
specialize pair_code_injective vp - L27
specialize pair_code_injective vs - L28
apply pair_code_injective - L29
refl - L30
exact houter_left
06Establish hnegativeL31–39
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pair code injective.
- L31
have hnegative : un = vn /\ ut = vt - L32
specialize pair_code_injective (((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut))) - L33
specialize pair_code_injective un - L34
specialize pair_code_injective ut - L35
specialize pair_code_injective vn - L36
specialize pair_code_injective vt - L37
apply pair_code_injective - L38
refl - L39
exact houter_right
07Separate the logical casesL40–42
08Use earlier factsL43–43
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L43
exact hpositive_left
09Separate the logical casesL44–44
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L44
split
10Use earlier factsL45–45
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L45
exact hpositive_right
11Separate the logical casesL46–46
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L46
split
Original exact command ledger · 48 lines
- 0001
intro z - 0002
intro up - 0003
intro us - 0004
intro un - 0005
intro ut - 0006
intro vp - 0007
intro vs - 0008
intro vn - 0009
intro vt - 0010
intro hfirst - 0011
intro hsecond - 0012
have houter : ((up) + (us)) * S ((up) + (us)) + ((us) + (us)) = ((vp) + (vs)) * S ((vp) + (vs)) + ((vs) + (vs)) /\ ((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut)) = ((vn) + (vt)) * S ((vn) + (vt)) + ((vt) + (vt)) - 0013
specialize pair_code_injective z - 0014
specialize pair_code_injective (((up) + (us)) * S ((up) + (us)) + ((us) + (us))) - 0015
specialize pair_code_injective (((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut))) - 0016
specialize pair_code_injective (((vp) + (vs)) * S ((vp) + (vs)) + ((vs) + (vs))) - 0017
specialize pair_code_injective (((vn) + (vt)) * S ((vn) + (vt)) + ((vt) + (vt))) - 0018
apply pair_code_injective - 0019
exact hfirst - 0020
exact hsecond - 0021
cases houter - 0022
have hpositive : up = vp /\ us = vs - 0023
specialize pair_code_injective (((up) + (us)) * S ((up) + (us)) + ((us) + (us))) - 0024
specialize pair_code_injective up - 0025
specialize pair_code_injective us - 0026
specialize pair_code_injective vp - 0027
specialize pair_code_injective vs - 0028
apply pair_code_injective - 0029
refl - 0030
exact houter_left - 0031
have hnegative : un = vn /\ ut = vt - 0032
specialize pair_code_injective (((un) + (ut)) * S ((un) + (ut)) + ((ut) + (ut))) - 0033
specialize pair_code_injective un - 0034
specialize pair_code_injective ut - 0035
specialize pair_code_injective vn - 0036
specialize pair_code_injective vt - 0037
apply pair_code_injective - 0038
refl - 0039
exact houter_right - 0040
cases hpositive - 0041
cases hnegative - 0042
split - 0043
exact hpositive_left - 0044
split - 0045
exact hpositive_right - 0046
split - 0047
exact hnegative_left - 0048
exact hnegative_right
Separate complete second-wave branches: Full T13 proof · Alpha v27.