-- File: optlib/Optlib/Algorithm/LASSO.lean
Theorem statement:
theorem extracted_formal_statement_193 {n m : ℕ+} {A : Matrix (Fin ↑m) (Fin ↑n) ℝ} {Ane0 : A ≠ 0}
  (h_original_goal : ¬Aᵀ * A = 0) : ¬A = 0 := sorry

Tactic state before:
n m : ℕ+
A : Matrix (Fin ↑m) (Fin ↑n) ℝ
b : Fin ↑m → ℝ
μ : ℝ
μpos : 0 < μ
Ane0 : A ≠ 0
x₀ : EuclideanSpace ℝ (Fin ↑n)
p : LASSO A b μ μpos Ane0 x₀
⊢ ¬Aᵀ * A = 0

Tactic: rw [Transpose_mul_self_eq_zero]

Tactic state after:
[n m : ℕ+
 A : Matrix (Fin ↑m) (Fin ↑n) ℝ
 b : Fin ↑m → ℝ
 μ : ℝ
 μpos : 0 < μ
 Ane0 : A ≠ 0
 x₀ : EuclideanSpace ℝ (Fin ↑n)
 p : LASSO A b μ μpos Ane0 x₀
 ⊢ ¬A = 0]

Premises used:
Transpose_mul_self_eq_zero : ∀ {n m : ℕ+} {A : Matrix (Fin ↑m) (Fin ↑n) ℝ}, Aᵀ * A = 0 ↔ A = 0