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.
This branch proves the finite determinant/rank/span substrate. It does not claim Smith or Hermite normal form, lattice index equals determinant, determinant multiplicativity, lattice reduction, or geometry-of-numbers theorems.
Exact theorem in conservative defined notation
∀ ap. ∀ an. ∀ bp. ∀ bn. ∀ cp. ∀ cn. ∀ dp. ∀ dn. ap + bn = bp + an → cp + dn = dp + cn → ap · cp + an · cn + (bp · dn + bn · dp) = bp · dp + bn · dn + (ap · cn + an · cp)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 49 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–10
02Establish hroworientedL11–14
03Establish hcoforientedL15–18
04Establish hfirstL19–27
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed pair mul cross transport.
- L19
have hfirst : ((((ap) * (cp) + (an) * (cn)) + ((bp) * (cn) + (bn) * (cp)) = ((ap) * (cn) + (an) * (cp)) + ((bp) * (cp) + (bn) * (cn))) /\ (((cp) * (ap) + (cn) * (an)) + ((cp) * (bn) + (cn) * (bp)) = ((cp) * (an) + (cn) * (ap)) + ((cp) * (bp) + (cn) * (bn)))) - L20
specialize signed_pair_mul_cross_transport (ap) - L21
specialize signed_pair_mul_cross_transport (an) - L22
specialize signed_pair_mul_cross_transport (bp) - L23
specialize signed_pair_mul_cross_transport (bn) - L24
specialize signed_pair_mul_cross_transport (cp) - L25
specialize signed_pair_mul_cross_transport (cn) - L26
apply signed_pair_mul_cross_transport - L27
exact hroworiented
05Separate the logical casesL28–28
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L28
cases hfirst
06Establish hsecondL29–37
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed pair mul cross transport.
- L29
have hsecond : ((((cp) * (bp) + (cn) * (bn)) + ((dp) * (bn) + (dn) * (bp)) = ((cp) * (bn) + (cn) * (bp)) + ((dp) * (bp) + (dn) * (bn))) /\ (((bp) * (cp) + (bn) * (cn)) + ((bp) * (dn) + (bn) * (dp)) = ((bp) * (cn) + (bn) * (cp)) + ((bp) * (dp) + (bn) * (dn)))) - L30
specialize signed_pair_mul_cross_transport (cp) - L31
specialize signed_pair_mul_cross_transport (cn) - L32
specialize signed_pair_mul_cross_transport (dp) - L33
specialize signed_pair_mul_cross_transport (dn) - L34
specialize signed_pair_mul_cross_transport (bp) - L35
specialize signed_pair_mul_cross_transport (bn) - L36
apply signed_pair_mul_cross_transport - L37
exact hcoforiented
07Separate the logical casesL38–38
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L38
cases hsecond
08Calculate and transport equalitiesL39–39
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L39
trans ((ap) * (cn) + (an) * (cp)) + ((bp) * (dp) + (bn) * (dn))
09Use earlier factsL40–49
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L40
specialize add_cross_sum_chain ((ap) * (cp) + (an) * (cn)) - L41
specialize add_cross_sum_chain ((ap) * (cn) + (an) * (cp)) - L42
specialize add_cross_sum_chain ((bp) * (cn) + (bn) * (cp)) - L43
specialize add_cross_sum_chain ((bp) * (cp) + (bn) * (cn)) - L44
specialize add_cross_sum_chain ((bp) * (dn) + (bn) * (dp)) - L45
specialize add_cross_sum_chain ((bp) * (dp) + (bn) * (dn)) - L46
apply add_cross_sum_chain - L47
exact hfirst_left - L48
exact hsecond_right - L49
apply add_comm
Original defined command ledger · 49 lines
- 0001
intro ap - 0002
intro an - 0003
intro bp - 0004
intro bn - 0005
intro cp - 0006
intro cn - 0007
intro dp - 0008
intro dn - 0009
intro hrow - 0010
intro hcofactor - 0011
have hroworiented : ap + bn = an + bp - 0012
trans bp + an - 0013
exact hrow - 0014
apply add_comm - 0015
have hcoforiented : cp + dn = cn + dp - 0016
trans dp + cn - 0017
exact hcofactor - 0018
apply add_comm - 0019
have hfirst : ((((ap) * (cp) + (an) * (cn)) + ((bp) * (cn) + (bn) * (cp)) = ((ap) * (cn) + (an) * (cp)) + ((bp) * (cp) + (bn) * (cn))) /\ (((cp) * (ap) + (cn) * (an)) + ((cp) * (bn) + (cn) * (bp)) = ((cp) * (an) + (cn) * (ap)) + ((cp) * (bp) + (cn) * (bn)))) - 0020
specialize signed_pair_mul_cross_transport (ap) - 0021
specialize signed_pair_mul_cross_transport (an) - 0022
specialize signed_pair_mul_cross_transport (bp) - 0023
specialize signed_pair_mul_cross_transport (bn) - 0024
specialize signed_pair_mul_cross_transport (cp) - 0025
specialize signed_pair_mul_cross_transport (cn) - 0026
apply signed_pair_mul_cross_transport - 0027
exact hroworiented - 0028
cases hfirst - 0029
have hsecond : ((((cp) * (bp) + (cn) * (bn)) + ((dp) * (bn) + (dn) * (bp)) = ((cp) * (bn) + (cn) * (bp)) + ((dp) * (bp) + (dn) * (bn))) /\ (((bp) * (cp) + (bn) * (cn)) + ((bp) * (dn) + (bn) * (dp)) = ((bp) * (cn) + (bn) * (cp)) + ((bp) * (dp) + (bn) * (dn)))) - 0030
specialize signed_pair_mul_cross_transport (cp) - 0031
specialize signed_pair_mul_cross_transport (cn) - 0032
specialize signed_pair_mul_cross_transport (dp) - 0033
specialize signed_pair_mul_cross_transport (dn) - 0034
specialize signed_pair_mul_cross_transport (bp) - 0035
specialize signed_pair_mul_cross_transport (bn) - 0036
apply signed_pair_mul_cross_transport - 0037
exact hcoforiented - 0038
cases hsecond - 0039
trans ((ap) * (cn) + (an) * (cp)) + ((bp) * (dp) + (bn) * (dn)) - 0040
specialize add_cross_sum_chain ((ap) * (cp) + (an) * (cn)) - 0041
specialize add_cross_sum_chain ((ap) * (cn) + (an) * (cp)) - 0042
specialize add_cross_sum_chain ((bp) * (cn) + (bn) * (cp)) - 0043
specialize add_cross_sum_chain ((bp) * (cp) + (bn) * (cn)) - 0044
specialize add_cross_sum_chain ((bp) * (dn) + (bn) * (dp)) - 0045
specialize add_cross_sum_chain ((bp) * (dp) + (bn) * (dn)) - 0046
apply add_cross_sum_chain - 0047
exact hfirst_left - 0048
exact hsecond_right - 0049
apply add_comm