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 code left right. (exists sb_pos_fs_abs sb_neg_fs_abs. (((code = 2 * sb_pos_fs_abs /\ sb_neg_fs_abs = 0) \/ exists sd_half_fs_abs. ((code = 2 * sd_half_fs_abs + 1 /\ sb_pos_fs_abs = 0) /\ sb_neg_fs_abs = S sd_half_fs_abs)) /\ left + sb_neg_fs_abs = right + sb_pos_fs_abs)) -> exists magnitude. ((left = right + magnitude \/ right = left + magnitude) /\ left * left + right * right = magnitude * magnitude + (left * right + right * left))Constructive proof overview
Generated structural guide
Every canonical signed balance supplies a natural magnitude, constructive sign branch, and exact squared cross-term transport.
The unchanged tactic script uses 2 declared prerequisites and contains 19 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
Direct dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This dependency-curried candidate body does not grant checked theorem use or 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 (2)
01Fix variables and assumptionsL1–4
02Establish habsoluteL5–10
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed balance absolute exists.
03Separate the logical casesL11–11
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L11
cases habsolute
04Construct an explicit witnessL12–12
Supply the displayed value, then prove that it has the required property.
- L12
exists x
05Separate the logical casesL13–13
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L13
split
06Use earlier factsL14–19
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original exact command ledger · 19 lines
- 0001
intro code - 0002
intro left - 0003
intro right - 0004
intro hbalance - 0005
have habsolute : exists magnitude. (left = right + magnitude \/ right = left + magnitude) - 0006
specialize signed_balance_absolute_exists code - 0007
specialize signed_balance_absolute_exists left - 0008
specialize signed_balance_absolute_exists right - 0009
apply signed_balance_absolute_exists - 0010
exact hbalance - 0011
cases habsolute - 0012
exists x - 0013
split - 0014
exact habsolute_witness - 0015
specialize four_square_absolute_square_balance left - 0016
specialize four_square_absolute_square_balance right - 0017
specialize four_square_absolute_square_balance x - 0018
apply four_square_absolute_square_balance - 0019
exact habsolute_witness