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
∀ r. ∀ w. ∀ i. ∀ j. Lt(i,r) → Lt(j,w) → Lt(i · w + j,r · w)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 25 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.
Named ingredients (1)
01Fix variables and assumptionsL1–6
02Establish hrowL7–12
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul le mul right.
- L7
have hrow : Le(S i · w,r · w)Definitions: Le(S i · w,r · w)Original native command in the exact edition - L8
specialize mul_le_mul_right (S i) - L9
specialize mul_le_mul_right (r) - L10
specialize mul_le_mul_right (w) - L11
apply mul_le_mul_right - L12
exact hi
03Establish heqL13–22
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul succ left.
- L13
have heq : (S i) * w = i * w + w - L14
apply mul_succ_left - L15
rewrite heq at hrow - L16
specialize lt_of_lt_of_le (i * w + j) - L17
specialize lt_of_lt_of_le (i * w + w) - L18
specialize lt_of_lt_of_le (r * w) - L19
apply lt_of_lt_of_le - L20
specialize matrix_recursive_lt_add_left (j) - L21
specialize matrix_recursive_lt_add_left (w) - L22
specialize matrix_recursive_lt_add_left (i * w)
Original defined command ledger · 25 lines
- 0001
intro r - 0002
intro w - 0003
intro i - 0004
intro j - 0005
intro hi - 0006
intro hj - 0007
have hrow : Le(S i · w,r · w) - 0008
specialize mul_le_mul_right (S i) - 0009
specialize mul_le_mul_right (r) - 0010
specialize mul_le_mul_right (w) - 0011
apply mul_le_mul_right - 0012
exact hi - 0013
have heq : (S i) * w = i * w + w - 0014
apply mul_succ_left - 0015
rewrite heq at hrow - 0016
specialize lt_of_lt_of_le (i * w + j) - 0017
specialize lt_of_lt_of_le (i * w + w) - 0018
specialize lt_of_lt_of_le (r * w) - 0019
apply lt_of_lt_of_le - 0020
specialize matrix_recursive_lt_add_left (j) - 0021
specialize matrix_recursive_lt_add_left (w) - 0022
specialize matrix_recursive_lt_add_left (i * w) - 0023
apply matrix_recursive_lt_add_left - 0024
exact hj - 0025
exact hrow