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
∀ b. ∀ c. ∀ d. ∀ ib. ∀ ic. ¬d = 0 → IdentityMatrixSelector(ib,ic,d) → ∀ x. Lt(x,d · d) → ∃ y. (∃ z. ∃ n. ∃ m. ∃ k. x = d · z + n ∧ (Lt(n,d) ∧ (BetaAt(ib,ic,z,m) ∧ (BetaAt(ib,ic,n,k) ∧ BetaAt(b,c,m · d + k,y))))) ∧ BetaAt(b,c,x,y)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 60 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–9
02Establish hcoordinatesL10–14
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply division remainder exists.
03Separate the logical casesL15–17
04Establish hrowL18–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply matrix recursive quotient row bound.
- L18
- L19
specialize matrix_recursive_quotient_row_bound (d) - L20
specialize matrix_recursive_quotient_row_bound (i) - L21
specialize matrix_recursive_quotient_row_bound (x) - L22
specialize matrix_recursive_quotient_row_bound (x1) - L23
apply matrix_recursive_quotient_row_bound - L24
exact hcoordinates_witness_witness_left - L25
exact hi
05Establish hvalueL26–30
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L26
have hvalue : ∃ a. BetaAt(b,c,i,a)Definitions: BetaAt(b,c,i,a)Original native command in the exact edition - L27
specialize beta_at_exists (b) - L28
specialize beta_at_exists (c) - L29
specialize beta_at_exists (i) - L30
apply beta_at_exists
06Separate the logical casesL31–31
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L31
cases hvalue
07Construct an explicit witnessL32–32
Supply the displayed value, then prove that it has the required property.
- L32
exists x2
08Separate the logical casesL33–33
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L33
split
09Construct an explicit witnessL34–37
10Separate the logical casesL38–38
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L38
split
11Use earlier factsL39–39
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L39
exact hcoordinates_witness_witness_left
12Separate the logical casesL40–40
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L40
split
13Use earlier factsL41–41
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L41
exact hcoordinates_witness_witness_right
14Separate the logical casesL42–42
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
split
15Use earlier factsL43–45
16Separate the logical casesL46–46
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L46
split
17Use earlier factsL47–49
18Establish hsourceL50–59
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul comm.
19Use earlier factsL60–60
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L60
exact hvalue_witness
Original defined command ledger · 60 lines
- 0001
intro b - 0002
intro c - 0003
intro d - 0004
intro ib - 0005
intro ic - 0006
intro hd - 0007
intro hidentity - 0008
intro i - 0009
intro hi - 0010
have hcoordinates : ∃ r. ∃ s. i = d · r + s ∧ Lt(s,d) - 0011
specialize division_remainder_exists (d) - 0012
specialize division_remainder_exists (i) - 0013
apply division_remainder_exists - 0014
exact hd - 0015
cases hcoordinates - 0016
cases hcoordinates_witness - 0017
cases hcoordinates_witness_witness - 0018
have hrow : Lt(x,d) - 0019
specialize matrix_recursive_quotient_row_bound (d) - 0020
specialize matrix_recursive_quotient_row_bound (i) - 0021
specialize matrix_recursive_quotient_row_bound (x) - 0022
specialize matrix_recursive_quotient_row_bound (x1) - 0023
apply matrix_recursive_quotient_row_bound - 0024
exact hcoordinates_witness_witness_left - 0025
exact hi - 0026
have hvalue : ∃ a. BetaAt(b,c,i,a) - 0027
specialize beta_at_exists (b) - 0028
specialize beta_at_exists (c) - 0029
specialize beta_at_exists (i) - 0030
apply beta_at_exists - 0031
cases hvalue - 0032
exists x2 - 0033
split - 0034
exists x - 0035
exists x1 - 0036
exists x - 0037
exists x1 - 0038
split - 0039
exact hcoordinates_witness_witness_left - 0040
split - 0041
exact hcoordinates_witness_witness_right - 0042
split - 0043
specialize hidentity (x) - 0044
apply hidentity - 0045
exact hrow - 0046
split - 0047
specialize hidentity (x1) - 0048
apply hidentity - 0049
exact hcoordinates_witness_witness_right - 0050
have hsource : x * d + x1 = i - 0051
trans d * x + x1 - 0052
congr - 0053
apply mul_comm - 0054
refl - 0055
symm - 0056
exact hcoordinates_witness_witness_left - 0057
rewrite hsource - 0058
rewrite hsource - 0059
exact hvalue_witness - 0060
exact hvalue_witness