zzhisthebest/LeanBenchmark huggingface dataset:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_10.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm admm_kkt]
  (this :
    (fun n => v ↑(φ₁ n)) = fun n =>
      -(ContinuousLinearMap.adjoint (OptProblem.A₂ E₁))
          (ADMM.y E₁ E₂ ↑(φ₁ n) +
            ((1 - ADMM.τ E₁ E₂ F) * ADMM.ρ E₁ E₂ F) •
              ((OptProblem.A₁ E₂) (e₁ ↑(φ₁ n)) + (OptProblem.A₂ E₁) (e₂ ↑(φ₁ n))))) :
  Tendsto (fun n => v ↑(φ₁ n)) atTop (𝓝 (-(ContinuousLinearMap.adjoint (OptProblem.A₂ E₁)) y'')) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm admm_kkt
this :
  (fun n => v ↑(φ₁ n)) = fun n =>
    -(ContinuousLinearMap.adjoint (OptProblem.A₂ E₁))
        (ADMM.y E₁ E₂ ↑(φ₁ n) +
          ((1 - ADMM.τ E₁ E₂ F) * ADMM.ρ E₁ E₂ F) • ((OptProblem.A₁ E₂) (e₁ ↑(φ₁ n)) + (OptProblem.A₂ E₁) (e₂ ↑(φ₁ n))))
⊢ Tendsto (fun n => v ↑(φ₁ n)) atTop (𝓝 (-(ContinuousLinearMap.adjoint (OptProblem.A₂ E₁)) y''))

Tactic:
rw [this]
    have h : Tendsto (fun n => (y (φ₁ n) + ((1 - τ) * ρ) • (A₁ (e₁ (φ₁ n)) + A₂ (e₂ (φ₁ n))))) atTop (𝓝 y'') :=
  by
  rw [← add_zero y'']
  apply Filter.Tendsto.add (y_subseq_converge' fullrank₁ fullrank₂) (const_smul_subseq₁ fullrank₁ fullrank₂)
    have : Tendsto (-A₂†) (𝓝 y'') (𝓝 (-A₂† y'')) := by apply Continuous.tendsto; apply ContinuousLinearMap.continuous
    apply Filter.tendsto_iff_seq_tendsto.1 this
    apply h

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_11.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm admm_kkt] :
  Tendsto
    (fun n => ‖(OptProblem.A₁ E₂) (ADMM.x₁ E₂ F (φ n)) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (φ n)) - OptProblem.b E₁ E₂‖)
    atTop (𝓝 ‖(OptProblem.A₁ E₂) x₁'' + (OptProblem.A₂ E₁) x₂'' - OptProblem.b E₁ E₂‖) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm admm_kkt
⊢ Tendsto
    (fun n => ‖(OptProblem.A₁ E₂) (ADMM.x₁ E₂ F (φ n)) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (φ n)) - OptProblem.b E₁ E₂‖)
    atTop (𝓝 ‖(OptProblem.A₁ E₂) x₁'' + (OptProblem.A₂ E₁) x₂'' - OptProblem.b E₁ E₂‖)

Tactic:
apply Tendsto.norm
    apply Tendsto.sub_const
    apply Tendsto.add
    apply Satisfying_equational_constraint1
    apply Satisfying_equational_constraint2

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_12.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)] :
  BddBelow (range fun n => Φ (n + 1)) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)
⊢ BddBelow (range fun n => Φ (n + 1))

Tactic:
simp [BddBelow, lowerBounds]
    use 0
    simp only [mem_setOf_eq]
    intro a
    apply Φ_is_nonneg (a + 1)

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_13.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)]
  (h_original_goal : Tendsto (fun x => ⨅ i, (fun n => Φ (n + 1)) i) atTop (𝓝 0)) :
  Tendsto (fun n => Φ (φ n.succ)) atTop (𝓝 0) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)
⊢ Tendsto (fun x => ⨅ i, (fun n => Φ (n + 1)) i) atTop (𝓝 0)

Tactic:
apply squeeze_zero
    apply Φ_ge
    apply Φ_le
    have := Φ_subseq_converge_zero fullrank₁ fullrank₂
    rw [← tendsto_add_atTop_iff_nat 1] at this

Tactic state after:
[case g0
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 inst✝ : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)
 this : Tendsto (fun n => Φ (φ (n + 1))) atTop (𝓝 0)
 ⊢ Tendsto (fun n => Φ (φ n.succ)) atTop (𝓝 0)]
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_14.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)]
  (hτ : ADMM.τ E₁ E₂ F > 0) (hτ' : ADMM.τ E₁ E₂ F ≥ 0)
  (h1 : ∀ (n : ℕ), 1 / ADMM.ρ E₁ E₂ F * Φ n = (ADMM.ρ E₁ E₂ F)⁻¹ * Φ n) (n : ℕ) :
  (ADMM.ρ E₁ E₂ F)⁻¹ * Φ n =
    (ADMM.ρ E₁ E₂ F)⁻¹ ^ 2 * (ADMM.τ E₁ E₂ F)⁻¹ * ‖ey n‖ ^ 2 + ‖(OptProblem.A₂ E₁) (e₂ n)‖ ^ 2 +
      ((1 - ADMM.τ E₁ E₂ F) ⊔ (1 - 1 / ADMM.τ E₁ E₂ F)) *
        ‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖ ^ 2 := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
n✝ : ℕ
inst✝ : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)
hτ : ADMM.τ E₁ E₂ F > 0
hτ' : ADMM.τ E₁ E₂ F ≥ 0
h1 : ∀ (n : ℕ), 1 / ADMM.ρ E₁ E₂ F * Φ n = (ADMM.ρ E₁ E₂ F)⁻¹ * Φ n
n : ℕ
⊢ (ADMM.ρ E₁ E₂ F)⁻¹ * Φ n =
    (ADMM.ρ E₁ E₂ F)⁻¹ ^ 2 * (ADMM.τ E₁ E₂ F)⁻¹ * ‖ey n‖ ^ 2 + ‖(OptProblem.A₂ E₁) (e₂ n)‖ ^ 2 +
      ((1 - ADMM.τ E₁ E₂ F) ⊔ (1 - 1 / ADMM.τ E₁ E₂ F)) * ‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖ ^ 2

Tactic:
simp [Φ, Ψ]
    ring_nf
    rw [mul_inv_cancel₀, one_mul, one_mul]
    ring_nf
    apply ne_of_gt (admm.hrho)

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_15.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)] :
  Tendsto (fun n => ‖(OptProblem.A₂ E₁) (e₂ n)‖ ^ 2) atTop (𝓝 0) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)
⊢ Tendsto (fun n => ‖(OptProblem.A₂ E₁) (e₂ n)‖ ^ 2) atTop (𝓝 0)

Tactic:
apply squeeze_zero_norm
    apply A₂e₂_le_Φ'
    have h1 : Tendsto (fun n ↦ (1 / ρ) * Φ n) atTop (𝓝 (1 / ρ * 0)) := by
  apply Filter.Tendsto.const_mul (1 / ρ) (Φ_converge_zero fullrank₁ fullrank₂)
    have h2 : Tendsto (fun n ↦ (1 / ρ) * Φ n) atTop (𝓝 0) :=
  by
  have : 1 / ρ * 0 = 0 := by norm_num
  rw [← this]
  exact h1
    assumption

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_16.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)]
  (n : ℕ) (h : ADMM.ρ E₁ E₂ F * ‖(OptProblem.A₂ E₁) (e₂ n)‖ ^ 2 ≥ 0) :
  ((1 - ADMM.τ E₁ E₂ F) ⊔ (1 - 1 / ADMM.τ E₁ E₂ F)) * ADMM.ρ E₁ E₂ F *
      ‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖ ^ 2 ≥
    0 := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm (admm_kkt₁ fullrank₁ fullrank₂)
n : ℕ
h : ADMM.ρ E₁ E₂ F * ‖(OptProblem.A₂ E₁) (e₂ n)‖ ^ 2 ≥ 0
⊢ ((1 - ADMM.τ E₁ E₂ F) ⊔ (1 - 1 / ADMM.τ E₁ E₂ F)) * ADMM.ρ E₁ E₂ F *
      ‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖ ^ 2 ≥
    0

Tactic:
apply mul_nonneg
    apply mul_nonneg
    linarith [nonneg₃, admm.hrho]
    linarith [admm.hrho]
    linarith [pow_two_nonneg (‖A₁ (e₁ n) + A₂ (e₂ n)‖)]

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter InnerProduct

open scoped Pointwise

theorem extracted_formal_statement_0.{u_5, u_4} {α : Type u_4} {β : Type u_5} [inst : NormedAddCommGroup α]
  [inst_1 : NormedAddCommGroup β] [inst_2 : InnerProductSpace ℝ α] [inst_3 : InnerProductSpace ℝ β]
  [inst_4 : CompleteSpace α] [inst_5 : CompleteSpace β] (A : α →L[ℝ] β) (s : α) (ε : ℝ) (εpos : ε > 0) (h : 0 < ‖A‖)
  (x : α) (hx : ‖s - x‖ ≤ ε / ‖A‖ ^ 2) (hzero : 0 < ‖A‖ ^ 2) :
  let t := x - s;
  s + t = x →
    ⟪A (s + t), A (s + t)⟫_ℝ - ⟪A s, A s⟫_ℝ - ⟪2 • (ContinuousLinearMap.adjoint A) (A s), s + t - s⟫_ℝ =
      ⟪A (s + t - s), A (s + t - s)⟫_ℝ := sorry

Tactic state before:
α : Type u_4
β : Type u_5
inst✝⁵ : NormedAddCommGroup α
inst✝⁴ : NormedAddCommGroup β
inst✝³ : InnerProductSpace ℝ α
inst✝² : InnerProductSpace ℝ β
inst✝¹ : CompleteSpace α
inst✝ : CompleteSpace β
A : α →L[ℝ] β
s : α
ε : ℝ
εpos : ε > 0
h : 0 < ‖A‖
x : α
hx : ‖s - x‖ ≤ ε / ‖A‖ ^ 2
hzero : 0 < ‖A‖ ^ 2
t : α := x - s
t1 : s + t = x
⊢ ⟪A (s + t), A (s + t)⟫_ℝ - ⟪A s, A s⟫_ℝ - ⟪2 • (ContinuousLinearMap.adjoint A) (A s), s + t - s⟫_ℝ =
    ⟪A (s + t - s), A (s + t - s)⟫_ℝ

Tactic:
simp only [map_add, add_sub_cancel_left]
    show ⟪A s + A t, A s + A t⟫ - ⟪A s, A s⟫ - ⟪(2 : ℝ) • (A†) (A s), t⟫ = ⟪A t, A t⟫
    rw [real_inner_add_add_self]
    rw [real_inner_smul_left, ContinuousLinearMap.adjoint_inner_left]
    ring

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter InnerProduct

open scoped Pointwise

theorem extracted_formal_statement_1.{u_5, u_4} {α : Type u_4} {β : Type u_5} [inst : NormedAddCommGroup α]
  [inst_1 : NormedAddCommGroup β] [inst_2 : InnerProductSpace ℝ α] [inst_3 : InnerProductSpace ℝ β]
  [inst_4 : CompleteSpace α] [inst_5 : CompleteSpace β] (A : α →L[ℝ] β) (s : α) (ε : ℝ) (εpos : ε > 0) (h : 0 < ‖A‖)
  (x : α) (hx : ‖s - x‖ ≤ ε / ‖A‖ ^ 2) (hzero : 0 < ‖A‖ ^ 2) :
  let t := x - s;
  s + t = x →
    ⟪A x, A x⟫_ℝ - ⟪A s, A s⟫_ℝ - ⟪2 • (ContinuousLinearMap.adjoint A) (A s), x - s⟫_ℝ = ⟪A (x - s), A (x - s)⟫_ℝ →
      |‖A (x - s)‖ ^ 2| ≤ ε * ‖s - x‖ := sorry

Tactic state before:
case h
α : Type u_4
β : Type u_5
inst✝⁵ : NormedAddCommGroup α
inst✝⁴ : NormedAddCommGroup β
inst✝³ : InnerProductSpace ℝ α
inst✝² : InnerProductSpace ℝ β
inst✝¹ : CompleteSpace α
inst✝ : CompleteSpace β
A : α →L[ℝ] β
s : α
ε : ℝ
εpos : ε > 0
h : 0 < ‖A‖
x : α
hx : ‖s - x‖ ≤ ε / ‖A‖ ^ 2
hzero : 0 < ‖A‖ ^ 2
t : α := x - s
t1 : s + t = x
this : ⟪A x, A x⟫_ℝ - ⟪A s, A s⟫_ℝ - ⟪2 • (ContinuousLinearMap.adjoint A) (A s), x - s⟫_ℝ = ⟪A (x - s), A (x - s)⟫_ℝ
⊢ |‖A (x - s)‖ ^ 2| ≤ ε * ‖s - x‖

Tactic:
simp only [abs_pow, abs_norm, ge_iff_le]
    calc
  _ = ‖A (s - x)‖ ^ 2 := by rw [norm_comm]
  _ ≤ (‖A‖ * ‖s - x‖) ^ 2 := by
    rw [sq, sq, ← mul_self_le_mul_self_iff]
    apply ContinuousLinearMap.le_opNorm
    apply norm_nonneg
    simp [h, norm_nonneg (s - x)]
  _ = ‖A‖ ^ 2 * ‖s - x‖ ^ 2 := by linarith
    rcases(le_iff_eq_or_lt.1 $ norm_nonneg (s - x)) with h1 | _
    ·
  rw [← h1]
  simp only [ne_eq, OfNat.ofNat_ne_zero, not_false_eq_true, zero_pow, mul_zero, le_refl]
    ·
  calc
    _ = ‖A‖ ^ 2 * ‖s - x‖ * ‖s - x‖ := by nth_rw 2 [sq]; rw [mul_assoc]
    _ ≤ ‖A‖ ^ 2 * ‖s - x‖ * (ε / ‖A‖ ^ 2) :=
      by
      have : 0 ≤ ‖A‖ ^ 2 * ‖s - x‖ := by simp [hzero, norm_nonneg (s - x)]
      apply mul_le_mul_of_nonneg_left hx this
    _ = _ := by
      field_simp [hzero]
      ring_nf

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter InnerProduct

open scoped Pointwise

theorem extracted_formal_statement_6.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} [inst_9 : Setting E₁ E₂ F admm admm_kkt] (n : ℕ+)
  (this : ↑n - 1 + 1 = ↑n) :
  let un := u n;
  un = u n →
    let yn := ADMM.y E₁ E₂ ↑n;
    let yn' := ADMM.y E₁ E₂ (↑n - 1);
    yn = ADMM.y E₁ E₂ ↑n →
      yn' = ADMM.y E₁ E₂ (↑n - 1) →
        let x₁n := ADMM.x₁ E₂ F ↑n;
        let x₂n := ADMM.x₂ E₁ F ↑n;
        let x₂n' := ADMM.x₂ E₁ F (↑n - 1);
        x₁n = ADMM.x₁ E₂ F ↑n →
          x₂n = ADMM.x₂ E₁ F ↑n →
            yn' =
                yn -
                  (ADMM.τ E₁ E₂ F * ADMM.ρ E₁ E₂ F) •
                    ((OptProblem.A₁ E₂) x₁n + (OptProblem.A₂ E₁) x₂n - OptProblem.b E₁ E₂) →
              ADMM.ρ E₁ E₂ F •
                  ((OptProblem.A₁ E₂) x₁n + (OptProblem.A₂ E₁) x₂n + (OptProblem.A₂ E₁) x₂n' - (OptProblem.A₂ E₁) x₂n -
                    OptProblem.b E₁ E₂) =
                ADMM.ρ E₁ E₂ F • ((OptProblem.A₁ E₂) x₁n + (OptProblem.A₂ E₁) x₂n - OptProblem.b E₁ E₂) +
                  ADMM.ρ E₁ E₂ F • ((OptProblem.A₂ E₁) x₂n' - (OptProblem.A₂ E₁) x₂n) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
inst✝ : Setting E₁ E₂ F admm admm_kkt
n : ℕ+
this : ↑n - 1 + 1 = ↑n
un : E₁ := u n
h₁ : un = u n
yn : F := ADMM.y E₁ E₂ ↑n
yn' : F := ADMM.y E₁ E₂ (↑n - 1)
h₂ : yn = ADMM.y E₁ E₂ ↑n
h₃ : yn' = ADMM.y E₁ E₂ (↑n - 1)
x₁n : E₁ := ADMM.x₁ E₂ F ↑n
x₂n : E₂ := ADMM.x₂ E₁ F ↑n
x₂n' : E₂ := ADMM.x₂ E₁ F (↑n - 1)
h₄ : x₁n = ADMM.x₁ E₂ F ↑n
h₅ : x₂n = ADMM.x₂ E₁ F ↑n
aux :
  yn' = yn - (ADMM.τ E₁ E₂ F * ADMM.ρ E₁ E₂ F) • ((OptProblem.A₁ E₂) x₁n + (OptProblem.A₂ E₁) x₂n - OptProblem.b E₁ E₂)
⊢ ADMM.ρ E₁ E₂ F •
      ((OptProblem.A₁ E₂) x₁n + (OptProblem.A₂ E₁) x₂n + (OptProblem.A₂ E₁) x₂n' - (OptProblem.A₂ E₁) x₂n -
        OptProblem.b E₁ E₂) =
    ADMM.ρ E₁ E₂ F • ((OptProblem.A₁ E₂) x₁n + (OptProblem.A₂ E₁) x₂n - OptProblem.b E₁ E₂) +
      ADMM.ρ E₁ E₂ F • ((OptProblem.A₂ E₁) x₂n' - (OptProblem.A₂ E₁) x₂n)

Tactic:
rw [← smul_add]
    refine (smul_right_inj ?hc).mpr ?_
    exact Ne.symm (ne_of_lt admm.hrho)
    rw [← add_sub]
    exact add_sub_right_comm (A₁ x₁n + A₂ x₂n) (A₂ x₂n' - A₂ x₂n) b

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter InnerProduct

open scoped Pointwise

theorem extracted_formal_statement_7.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (n : ℕ)
  (h_original_goal :
    (OptProblem.A₁ E₂) (ADMM.x₁ E₂ F (n + 1)) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) - OptProblem.b E₁ E₂ =
      (1 / (ADMM.τ E₁ E₂ F * ADMM.ρ E₁ E₂ F)) • (ADMM.y E₁ E₂ (n + 1) - ADMM.y E₁ E₂ n)) :
  (OptProblem.A₁ E₂) (ADMM.x₁ E₂ F (n + 1)) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) - OptProblem.b E₁ E₂ =
    ((ADMM.ρ E₁ E₂ F)⁻¹ * ((ADMM.τ E₁ E₂ F)⁻¹ * ADMM.τ E₁ E₂ F * ADMM.ρ E₁ E₂ F)) •
      ((OptProblem.A₁ E₂) (ADMM.x₁ E₂ F (n + 1)) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) -
        OptProblem.b E₁ E₂) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
inst✝ : Setting E₁ E₂ F admm admm_kkt
n : ℕ
⊢ (OptProblem.A₁ E₂) (ADMM.x₁ E₂ F (n + 1)) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) - OptProblem.b E₁ E₂ =
    (1 / (ADMM.τ E₁ E₂ F * ADMM.ρ E₁ E₂ F)) • (ADMM.y E₁ E₂ (n + 1) - ADMM.y E₁ E₂ n)

Tactic:
rw [admm.itey n, add_comm (y n)]
    simp only [one_div, mul_inv_rev, add_sub_cancel_right]
    rw [smul_smul, mul_assoc]
    nth_rw 2 [← mul_assoc]
    have htau1 : τ⁻¹ * τ = 1 := by
  refine inv_mul_cancel₀ ?h
  linarith [admm.htau.1];

Tactic state after:
[E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 n : ℕ
 htau1 : (ADMM.τ E₁ E₂ F)⁻¹ * ADMM.τ E₁ E₂ F = 1
 ⊢ (OptProblem.A₁ E₂) (ADMM.x₁ E₂ F (n + 1)) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) - OptProblem.b E₁ E₂ =
     ((ADMM.ρ E₁ E₂ F)⁻¹ * ((ADMM.τ E₁ E₂ F)⁻¹ * ADMM.τ E₁ E₂ F * ADMM.ρ E₁ E₂ F)) •
       ((OptProblem.A₁ E₂) (ADMM.x₁ E₂ F (n + 1)) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) - OptProblem.b E₁ E₂)]