Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
These are actual signed-table and finite-sum foundations. Equality compares represented signed values, not arbitrary encodings. MatrixMinorFourCode is reused solely as generic nested pairing, without a matrix hypothesis. Full finite signed G007 is established separately in the Möbius-inversion family.
Exact theorem in conservative defined notation
∀ a. (∃ x. ∃ y. SignedDecode(a,x,y) ∧ SignedDecode(a,y,x)) → a = 0
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 30 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.
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–2
02Separate the logical casesL3–5
03Establish heqL6–14
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed decode functional.
- L6
have heq : x = x1 /\ x1 = x - L7
specialize signed_decode_functional (a) - L8
specialize signed_decode_functional (x) - L9
specialize signed_decode_functional (x1) - L10
specialize signed_decode_functional (x1) - L11
specialize signed_decode_functional (x) - L12
apply signed_decode_functional - L13
exact hneg_witness_witness_left - L14
exact hneg_witness_witness_right
04Separate the logical casesL15–15
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L15
cases heq
05Establish hbL16–16
Establish this local claim before using it. It is not an additional assumption.
- L16
have hb : SignedBalance(a,x,x1)Definitions: SignedBalance(a,x,x1)Original native command in the exact edition
06Construct an explicit witnessL17–18
07Separate the logical casesL19–19
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L19
split
08Use earlier factsL20–21
09Establish hzL22–27
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed balance zero iff.
10Separate the logical casesL28–28
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L28
cases hz
Original defined command ledger · 30 lines
- 0001
intro a - 0002
intro hneg - 0003
cases hneg - 0004
cases hneg_witness - 0005
cases hneg_witness_witness - 0006
have heq : x = x1 /\ x1 = x - 0007
specialize signed_decode_functional (a) - 0008
specialize signed_decode_functional (x) - 0009
specialize signed_decode_functional (x1) - 0010
specialize signed_decode_functional (x1) - 0011
specialize signed_decode_functional (x) - 0012
apply signed_decode_functional - 0013
exact hneg_witness_witness_left - 0014
exact hneg_witness_witness_right - 0015
cases heq - 0016
have hb : SignedBalance(a,x,x1) - 0017
exists x - 0018
exists x1 - 0019
split - 0020
exact hneg_witness_witness_left - 0021
apply add_comm - 0022
have hz : (a = 0 -> x = x1) /\ (x = x1 -> a = 0) - 0023
specialize signed_balance_zero_iff (a) - 0024
specialize signed_balance_zero_iff (x) - 0025
specialize signed_balance_zero_iff (x1) - 0026
apply signed_balance_zero_iff - 0027
exact hb - 0028
cases hz - 0029
apply hz_right - 0030
exact heq_left