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))Constructive proof overview
Generated structural guide
Every canonical balanced signed coordinate has an explicit natural absolute magnitude with a constructive sign choice.
The unchanged tactic script uses 1 declared prerequisite and contains 25 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
Historical empty-context replay experiment only; that experiment persisted no certificate and granted no release authority. Current checked use follows separately sealed, independently verified proof bundles; there is no Stable promotion.
Proof neighborhood
Direct dependencies
signed_decode_normal 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–4
02Separate the logical casesL5–7
03Use earlier factsL8–10
04Establish hnormalL11–13
05Separate the logical casesL14–14
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L14
cases hnormal
06Construct an explicit witnessL15–15
Supply the displayed value, then prove that it has the required property.
- L15
exists x1
07Separate the logical casesL16–16
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L16
right
08Calculate and transport equalitiesL17–19
09Use earlier factsL20–20
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L20
exact hbalance_witness_witness_right
10Construct an explicit witnessL21–21
Supply the displayed value, then prove that it has the required property.
- L21
exists x
11Separate the logical casesL22–22
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L22
left
12Calculate and transport equalitiesL23–24
13Use earlier factsL25–25
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L25
exact hbalance_witness_witness_right
Original exact command ledger · 25 lines
- 0001
intro code - 0002
intro left - 0003
intro right - 0004
intro hbalance - 0005
cases hbalance - 0006
cases hbalance_witness - 0007
cases hbalance_witness_witness - 0008
specialize signed_decode_normal code - 0009
specialize signed_decode_normal x - 0010
specialize signed_decode_normal x1 - 0011
have hnormal : x = 0 \/ x1 = 0 - 0012
apply signed_decode_normal - 0013
exact hbalance_witness_witness_left - 0014
cases hnormal - 0015
exists x1 - 0016
right - 0017
symm - 0018
rewrite hnormal_left at hbalance_witness_witness_right - 0019
rewrite PA3 at hbalance_witness_witness_right - 0020
exact hbalance_witness_witness_right - 0021
exists x - 0022
left - 0023
rewrite hnormal_right at hbalance_witness_witness_right - 0024
rewrite PA3 at hbalance_witness_witness_right - 0025
exact hbalance_witness_witness_right