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. ∀ q. ∀ j. ∀ u. ∀ v. ∀ U. ∀ V. MatrixMinorPrefix(b,c,S q,0,j,u,v,q,q · q) → MatrixMinorPrefix(b,c,S q,0,j,U,V,q,q · q) → ∀ x. ∀ y. Lt(x,q · q) → BetaAt(u,v,x,y) → BetaAt(U,V,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 82 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
02Fix variables and assumptionsL11–14
03Establish hfirstL15–18
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hleft.
- L15
have hfirst : ∃ r. ∃ s. ∃ z. k = q · r + s ∧ (Lt(s,q) ∧ (MatrixMinorCell(b,c,S q,0,j,r,s,z) ∧ BetaAt(u,v,k,z)))Definitions: Lt(s,q)MatrixMinorCell(b,c,S q,0,j,r,s,z)BetaAt(u,v,k,z)Original native command in the exact edition - L16
specialize hleft (k) - L17
apply hleft - L18
exact hk
04Separate the logical casesL19–24
05Establish hsecondL25–28
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hright.
- L25
have hsecond : ∃ r. ∃ s. ∃ z. k = q · r + s ∧ (Lt(s,q) ∧ (MatrixMinorCell(b,c,S q,0,j,r,s,z) ∧ BetaAt(U,V,k,z)))Definitions: Lt(s,q)MatrixMinorCell(b,c,S q,0,j,r,s,z)BetaAt(U,V,k,z)Original native command in the exact edition - L26
specialize hright (k) - L27
apply hright - L28
exact hk
06Separate the logical casesL29–34
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
07Establish hcoordinatesL35–44
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply division remainder unique.
- L35
have hcoordinates : x = x3 /\ x1 = x4 - L36
specialize division_remainder_unique (q) - L37
specialize division_remainder_unique (k) - L38
specialize division_remainder_unique (x) - L39
specialize division_remainder_unique (x1) - L40
specialize division_remainder_unique (x3) - L41
specialize division_remainder_unique (x4) - L42
apply division_remainder_unique - L43
exact hfirst_witness_witness_witness_left - L44
exact hfirst_witness_witness_witness_right_left
08Use earlier factsL45–46
09Separate the logical casesL47–47
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L47
cases hcoordinates
10Establish hvaluesL48–57
Establish this local claim before using it. It is not an additional assumption.
- L48
have hvalues : x2 = x5 - L49
specialize beta_matrix_minor_cell_functional (b) - L50
specialize beta_matrix_minor_cell_functional (c) - L51
specialize beta_matrix_minor_cell_functional (S q) - L52
specialize beta_matrix_minor_cell_functional (0) - L53
specialize beta_matrix_minor_cell_functional (j) - L54
specialize beta_matrix_minor_cell_functional (x) - L55
specialize beta_matrix_minor_cell_functional (x1) - L56
specialize beta_matrix_minor_cell_functional (x2) - L57
specialize beta_matrix_minor_cell_functional (x5)
11Use earlier factsL58–59
12Calculate and transport equalitiesL60–67
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
13Use earlier factsL68–68
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L68
exact hsecond_witness_witness_witness_right_right_left
14Establish houtputL69–78
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
15Use earlier factsL79–79
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L79
exact hvalues
16Calculate and transport equalitiesL80–81
17Use earlier factsL82–82
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L82
exact hsecond_witness_witness_witness_right_right_right
Original defined command ledger · 82 lines
- 0001
intro b - 0002
intro c - 0003
intro q - 0004
intro j - 0005
intro u - 0006
intro v - 0007
intro U - 0008
intro V - 0009
intro hleft - 0010
intro hright - 0011
intro k - 0012
intro a - 0013
intro hk - 0014
intro ha - 0015
have hfirst : ∃ r. ∃ s. ∃ z. k = q · r + s ∧ (Lt(s,q) ∧ (MatrixMinorCell(b,c,S q,0,j,r,s,z) ∧ BetaAt(u,v,k,z))) - 0016
specialize hleft (k) - 0017
apply hleft - 0018
exact hk - 0019
cases hfirst - 0020
cases hfirst_witness - 0021
cases hfirst_witness_witness - 0022
cases hfirst_witness_witness_witness - 0023
cases hfirst_witness_witness_witness_right - 0024
cases hfirst_witness_witness_witness_right_right - 0025
have hsecond : ∃ r. ∃ s. ∃ z. k = q · r + s ∧ (Lt(s,q) ∧ (MatrixMinorCell(b,c,S q,0,j,r,s,z) ∧ BetaAt(U,V,k,z))) - 0026
specialize hright (k) - 0027
apply hright - 0028
exact hk - 0029
cases hsecond - 0030
cases hsecond_witness - 0031
cases hsecond_witness_witness - 0032
cases hsecond_witness_witness_witness - 0033
cases hsecond_witness_witness_witness_right - 0034
cases hsecond_witness_witness_witness_right_right - 0035
have hcoordinates : x = x3 /\ x1 = x4 - 0036
specialize division_remainder_unique (q) - 0037
specialize division_remainder_unique (k) - 0038
specialize division_remainder_unique (x) - 0039
specialize division_remainder_unique (x1) - 0040
specialize division_remainder_unique (x3) - 0041
specialize division_remainder_unique (x4) - 0042
apply division_remainder_unique - 0043
exact hfirst_witness_witness_witness_left - 0044
exact hfirst_witness_witness_witness_right_left - 0045
exact hsecond_witness_witness_witness_left - 0046
exact hsecond_witness_witness_witness_right_left - 0047
cases hcoordinates - 0048
have hvalues : x2 = x5 - 0049
specialize beta_matrix_minor_cell_functional (b) - 0050
specialize beta_matrix_minor_cell_functional (c) - 0051
specialize beta_matrix_minor_cell_functional (S q) - 0052
specialize beta_matrix_minor_cell_functional (0) - 0053
specialize beta_matrix_minor_cell_functional (j) - 0054
specialize beta_matrix_minor_cell_functional (x) - 0055
specialize beta_matrix_minor_cell_functional (x1) - 0056
specialize beta_matrix_minor_cell_functional (x2) - 0057
specialize beta_matrix_minor_cell_functional (x5) - 0058
apply beta_matrix_minor_cell_functional - 0059
exact hfirst_witness_witness_witness_right_right_left - 0060
rewrite hcoordinates_left - 0061
rewrite hcoordinates_left - 0062
rewrite hcoordinates_left - 0063
rewrite hcoordinates_left - 0064
rewrite hcoordinates_right - 0065
rewrite hcoordinates_right - 0066
rewrite hcoordinates_right - 0067
rewrite hcoordinates_right - 0068
exact hsecond_witness_witness_witness_right_right_left - 0069
have houtput : a = x5 - 0070
trans x2 - 0071
specialize beta_at_unique (u) - 0072
specialize beta_at_unique (v) - 0073
specialize beta_at_unique (k) - 0074
specialize beta_at_unique (a) - 0075
specialize beta_at_unique (x2) - 0076
apply beta_at_unique - 0077
exact ha - 0078
exact hfirst_witness_witness_witness_right_right_right - 0079
exact hvalues - 0080
rewrite houtput - 0081
rewrite houtput - 0082
exact hsecond_witness_witness_witness_right_right_right