DL0024

matrix_recursive_initial_row_prefix

Equality of all cells of a nonempty square matrix includes every actual first-row entry.

Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable

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. ∀ B. ∀ C. ∀ q. (∀ x. ∀ y. Lt(x,S q · S q)BetaAt(b,c,x,y)BetaAt(B,C,x,y)) → ∀ x. ∀ y. Lt(x,S q)BetaAt(b,c,x,y)BetaAt(B,C,x,y)

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

succ_ne_zero · checked external prerequisitele_scaled_nonzero · checked external prerequisitematrix_recursive_prefix_restrict
Original expanded first-order statement
forall b c B C q. (forall mdr_i_square_prefix mdr_a_square_prefix. (exists mdr_gap_square_prefixb. mdr_gap_square_prefixb + S (mdr_i_square_prefix) = ((S q) * (S q))) -> (((exists ff_h_mdr_square_prefixo. ff_h_mdr_square_prefixo + S (mdr_a_square_prefix) = S ((S (mdr_i_square_prefix)) * c)) /\ exists ff_q_mdr_square_prefixo. b = ff_q_mdr_square_prefixo * S ((S (mdr_i_square_prefix)) * c) + (mdr_a_square_prefix))) -> (((exists ff_h_mdr_square_prefixn. ff_h_mdr_square_prefixn + S (mdr_a_square_prefix) = S ((S (mdr_i_square_prefix)) * C)) /\ exists ff_q_mdr_square_prefixn. B = ff_q_mdr_square_prefixn * S ((S (mdr_i_square_prefix)) * C) + (mdr_a_square_prefix)))) -> (forall mdr_i_row_prefix mdr_a_row_prefix. (exists mdr_gap_row_prefixb. mdr_gap_row_prefixb + S (mdr_i_row_prefix) = (S q)) -> (((exists ff_h_mdr_row_prefixo. ff_h_mdr_row_prefixo + S (mdr_a_row_prefix) = S ((S (mdr_i_row_prefix)) * c)) /\ exists ff_q_mdr_row_prefixo. b = ff_q_mdr_row_prefixo * S ((S (mdr_i_row_prefix)) * c) + (mdr_a_row_prefix))) -> (((exists ff_h_mdr_row_prefixn. ff_h_mdr_row_prefixn + S (mdr_a_row_prefix) = S ((S (mdr_i_row_prefix)) * C)) /\ exists ff_q_mdr_row_prefixn. B = ff_q_mdr_row_prefixn * S ((S (mdr_i_row_prefix)) * C) + (mdr_a_row_prefix))))

Complete tactic proof in conservative notation

All 19 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

19 script commands · 3 reading checkpoints · 0 local claims

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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (1)
01Fix variables and assumptionsL1–6

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro b
  2. L2
    intro c
  3. L3
    intro B
  4. L4
    intro C
  5. L5
    intro q
  6. L6
    intro hprefix
02Use earlier factsL7–16

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L7
    specialize matrix_recursive_prefix_restrict (b)
  2. L8
    specialize matrix_recursive_prefix_restrict (c)
  3. L9
    specialize matrix_recursive_prefix_restrict (B)
  4. L10
    specialize matrix_recursive_prefix_restrict (C)
  5. L11
    specialize matrix_recursive_prefix_restrict ((S q) * (S q))
  6. L12
    specialize matrix_recursive_prefix_restrict (S q)
  7. L13
    apply matrix_recursive_prefix_restrict
  8. L14
    specialize le_scaled_nonzero (S q)
  9. L15
    specialize le_scaled_nonzero (S q)
  10. L16
    apply le_scaled_nonzero
03Use earlier factsL17–19

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L17
    specialize succ_ne_zero (q)
  2. L18
    apply succ_ne_zero
  3. L19
    exact hprefix

Library-wide reading audit

Original defined command ledger · 19 lines
  1. 0001intro b
  2. 0002intro c
  3. 0003intro B
  4. 0004intro C
  5. 0005intro q
  6. 0006intro hprefix
  7. 0007specialize matrix_recursive_prefix_restrict (b)
  8. 0008specialize matrix_recursive_prefix_restrict (c)
  9. 0009specialize matrix_recursive_prefix_restrict (B)
  10. 0010specialize matrix_recursive_prefix_restrict (C)
  11. 0011specialize matrix_recursive_prefix_restrict ((S q) * (S q))
  12. 0012specialize matrix_recursive_prefix_restrict (S q)
  13. 0013apply matrix_recursive_prefix_restrict
  14. 0014specialize le_scaled_nonzero (S q)
  15. 0015specialize le_scaled_nonzero (S q)
  16. 0016apply le_scaled_nonzero
  17. 0017specialize succ_ne_zero (q)
  18. 0018apply succ_ne_zero
  19. 0019exact hprefix