theorem extracted_formal_statement_15 {n m : ℕ+} {b : Fin ↑m → ℝ} {A : Matrix (Fin ↑m) (Fin ↑n) ℝ}
  (h_original_goal : ConvexOn ℝ Set.univ fun x => 1 / 2 * ‖A *ᵥ x - b‖ ^ 2) (x : EuclideanSpace ℝ (Fin ↑n)) :
  x ∈ Set.univ → ∀ y ∈ Set.univ, inner (Aᵀ *ᵥ (A *ᵥ x - b) - Aᵀ *ᵥ (A *ᵥ y - b)) (x - y) ≥ 0 := sorry

State before:
n m : ℕ+
b : Fin ↑m → ℝ
A : Matrix (Fin ↑m) (Fin ↑n) ℝ
⊢ ConvexOn ℝ Set.univ fun x => 1 / 2 * ‖A *ᵥ x - b‖ ^ 2

Tactic: apply monotone_gradient_convex'
    apply convex_univ
    exact (fun x _ => affine_sq_gradient x)

State after:
[case mono
 n m : ℕ+
 b : Fin ↑m → ℝ
 A : Matrix (Fin ↑m) (Fin ↑n) ℝ
 ⊢ ∀ x ∈ Set.univ, ∀ y ∈ Set.univ, inner (Aᵀ *ᵥ (A *ᵥ x - b) - Aᵀ *ᵥ (A *ᵥ y - b)) (x - y) ≥ 0]

Relevant lemmas:
affine_sq_gradient : ∀ {n m : ℕ+} {b : Fin ↑m → ℝ} {A : Matrix (Fin ↑m) (Fin ↑n) ℝ} (x : EuclideanSpace ℝ (Fin ↑n)),
  HasGradientAt (fun x => 1 / 2 * ‖A *ᵥ x - b‖ ^ 2) (Aᵀ *ᵥ (A *ᵥ x - b)) x
monotone_gradient_convex' : ∀ {E : Type u_1} [inst : NormedAddCommGroup E] [inst_1 : InnerProductSpace ℝ E]
  [inst_2 : CompleteSpace E] {f : E → ℝ} {f' : E → E} {s : Set E},
  Convex ℝ s →
    (∀ x ∈ s, HasGradientAt f (f' x) x) → (∀ x ∈ s, ∀ y ∈ s, inner (f' x - f' y) (x - y) ≥ 0) → ConvexOn ℝ s f
convex_univ : ∀ {𝕜 : Type u_1} {E : Type u_2} [inst : OrderedSemiring 𝕜] [inst_1 : AddCommMonoid E] [inst_2 : SMul 𝕜 E],
  Convex 𝕜 Set.univ